Saya bekerja dengan Ruby on Rails, Apakah ada cara untuk menghapus html
dari string menggunakan metode sanitasi atau equal dan hanya menyimpan teks di dalam atribut nilai pada tag input?
html
ruby
string
ruby-on-rails-3
Mattias
sumber
sumber
text.strip
bekerjaJawaban:
Ada
strip_tags
metode dalamActionView::Helpers::SanitizeHelper
:http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html#method-i-strip_tags
Edit: untuk mendapatkan teks di dalam atribut nilai, Anda dapat menggunakan sesuatu seperti Nokogiri dengan ekspresi Xpath untuk mengeluarkannya dari string.
sumber
Jika kita ingin menggunakan model ini
yang merupakan kode dalam metode "strip_tags"
sumber
require 'html/sanitizer'
dan memberi contoh pembersih Anda sendiriHTML::FullSanitizer.new
.require 'html/sanitizer'
menimbulkan kesalahan jadi saya harus menggunakan:Rails::Html::FullSanitizer.new
( edgeapi.rubyonrails.org/classes/HTML/… )Ya, sebut ini:
sanitize(html_string, tags:[])
sumber
Daftar putih tag dan atribut dapat ditentukan seperti di bawah ini
Pernyataan di atas memungkinkan tag img , br dan p dan atribut src dan gaya .
sumber
Saya telah menggunakan pustaka Loofah, karena cocok untuk HTML dan XML (baik dokumen maupun fragmen string). Ini adalah mesin di belakang permata pembersih html. Saya hanya menempelkan contoh kode untuk menunjukkan betapa sederhananya penggunaannya.
Permata Loofah
sumber
Bagaimana dengan ini?
sumber
Rails::Html::FullSanitizer.new
jika Anda tidak ingin menentukan daftar putih.