【发布时间】:2014-04-12 21:45:55
【问题描述】:
我知道我在这里是个白痴,但我想不出这是怎么做到的。我正在创建一个具有特定兴趣的应用程序,并且正在使用使用 Nokogiri 设置的 Wikipedia scrape。我有两个输入:Title 和Wikipedia,但想使用刮擦在数据模型中填充Summary 和Content。我想将Wikipedia 属性用作方法内的url 中的变量,但不断收到错误dynamic constant assignment PAGE_URL = "http://en.wikipedia.org/w/i...。
我认为方法应该放在模型中,在控制器下的创建定义中引用它们,但这似乎不起作用。
编辑
我刚刚尝试按照建议从方法中取出常量,但我仍然遇到动态常量分配错误。我的模型目前看起来像这样:
PAGE_URL1 = "http://en.wikipedia.org/w/index.php?title="
PAGE_URL2 = "&printable=yes"
def get_PAGE_URL
PAGE_URL = PAGE_URL1 + self.wikipedia + PAGE_URL2
end
def get_page
page = Nokogiri::HTML(open(PAGE_URL))
end
def get_summary
get_PAGE_URL
self.summary = page.css("p")[0].text
end
def get_full_page
get_PAGE_URL
puts page.css('div#content.mw-body div#bodyContent div#mw-content-text.mw-content-ltr p').each do |p|
self.content = puts p.text
end
end
【问题讨论】:
标签: ruby ruby-on-rails-4 instance-variables