Я не могу понять, почему какой-то столбец не может обнаружить в ActiveRecord.Пожалуйста, смотрите ниже.Дело в том, prev_or_next
.
Определение таблицы здесь.
Информация о записи такова.
И вот код.
def script_insert(page, lang, user)
contents = page[:body].force_encoding("UTF-8").html_safe
InsertScript.all.each do |is|
doc = Nokogiri::HTML::DocumentFragment.parse(contents)
binding.pry
if eval(is.condition)
max = doc.css(is.section).count - 1
num = eval(is.where)
pos = num ? doc.css(is.section)[num] : doc.css(is.section)[0]
if pos.present?
div = Nokogiri::XML::Node.new "div", doc
div.inner_html = is.script
pos.add_previous_sibling(div) if is[:prev_or_next] == "1"
pos.add_next_sibling(div) if is[:prev_or_next] == "2"
contents = doc.to_html
end
end
end
Когда я вижу сценарий, как if is [: prev_or_next] == "1 "
К сожалению, [: prev_or_next] равно нулю.Вот точка останова дегаггера.
[16] pry(#<#<Class:0x00007fa152365f88>>)> is
=> #<InsertScript:0x00007fa1599a1f30
id: 2,
title: "関連コンテンツ",
condition: "true",
section: "img",
prev_or_next: nil,
where: "max",
script:
"<script async src=\"//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js\"></script>\r\n<ins class=\"adsbygoogle\"\r\n style=\"display:block\"\r\n data-ad-format=\"autorelaxed\"\r\n data-ad-client=\"ca-pub-7141760577373107\"\r\n data-ad-slot=\"1107433854\"></ins>\r\n<script>\r\n (adsbygoogle = window.adsbygoogle || []).push({});\r\n</script>",
memo: "",
activate: "active",
created_at: Fri, 01 Feb 2019 14:02:50 JST +09:00,
updated_at: Fri, 01 Feb 2019 14:09:07 JST +09:00>
Мое приложение - Rails 5.2.2 и Ruby 2.5.0.Кто-нибудь описывает, что происходит и как исправить?Заранее спасибо.