Rails 辅助循环 html 出现在我的视图中
Rails helper loops html is appearing on my view
你好所以我正在使用一个辅助模块 运行 一些功能......
但是不知何故,这部分帮助程序代码出现在我的 html..
上
for i in 0..minedTextSize
这是在html
这是html调用辅助方法。
<h1>TEST TEST</h1>
<%=extract_value("filePath")%>
在我的控制器中,我只包含了辅助方法
class MainPageController < ApplicationController
include ExtractHelper
def index
end
end
有什么想法吗?
更新########
这是我的帮手ruby代码
module ExtractHelper
require 'rubygems'
require 'nokogiri'
require 'open-uri'
require 'pdf-reader-turtletext'
def download_pdf(url)
found = false
page = Nokogiri::HTML(open("http//www.somesite.com")
puts page.class # => Nokogiri::HTML::Documents
for i in 0..(page.css('a').size - 1)
if(page.css('a')[i]['href'][-4,4] != ".pdf")
next
else
found = true
file_link = page.css('a')[i]['href']
file_link.gsub!(' ','%20')
link = "http//www.somesite.com/" + file_link # Generate the $
puts link
download = open(link)
IO.copy_stream(download,"/home/ec2user/my_project/pdfFiles/Demo.pdf")
puts file_link + " has been downloaded."
@link = file_link + " has been downloaded."
if found == true
break
end
end #if
end # for
end #def
def extract_value(filePath)
filePath = "/home/ec2-user/my_project/pdfFiles/Demo.pdf"
reader = PDF::Reader::Turtletext.new(filePath)
textangle = reader.bounding_box do
inclusive true
page 4
below "RIGHT HERE"
end
minedText = textangle.text
minedTextSize = minedText.size - 1
for i in 0..minedTextSize
if minedText[i][0].include? "WEEK 1"
puts minedText[i][1]
@lastweek = minedText[i][1]
end
if minedText[i][0].include? "WEEK 2"
puts minedText[i][1]
@previousweek = minedText[i][1]
end
end
end #def
end #module
您的 IO.copy_stream
中包含 /home/ec2user/my_project/pdfFiles/Demo.pdf
的引号不匹配。您还可以使用相同的方法获得一个没有闭包的开包。
Puts 打印到 stdout。您在视图中得到 0..36,因为 helper 正在返回其最后评估的行 (a for) 的值。明确地尝试 evaluating/returning 一些东西,例如:
def extract_value(filePath)
# some initial code
value = ''
for i in 0..minedTextSize
# some more code
value = 'something'
end
"String concatenating some #{value}"
end
你好所以我正在使用一个辅助模块 运行 一些功能...... 但是不知何故,这部分帮助程序代码出现在我的 html..
上for i in 0..minedTextSize
这是在html
这是html调用辅助方法。
<h1>TEST TEST</h1>
<%=extract_value("filePath")%>
在我的控制器中,我只包含了辅助方法
class MainPageController < ApplicationController
include ExtractHelper
def index
end
end
有什么想法吗?
更新########
这是我的帮手ruby代码
module ExtractHelper
require 'rubygems'
require 'nokogiri'
require 'open-uri'
require 'pdf-reader-turtletext'
def download_pdf(url)
found = false
page = Nokogiri::HTML(open("http//www.somesite.com")
puts page.class # => Nokogiri::HTML::Documents
for i in 0..(page.css('a').size - 1)
if(page.css('a')[i]['href'][-4,4] != ".pdf")
next
else
found = true
file_link = page.css('a')[i]['href']
file_link.gsub!(' ','%20')
link = "http//www.somesite.com/" + file_link # Generate the $
puts link
download = open(link)
IO.copy_stream(download,"/home/ec2user/my_project/pdfFiles/Demo.pdf")
puts file_link + " has been downloaded."
@link = file_link + " has been downloaded."
if found == true
break
end
end #if
end # for
end #def
def extract_value(filePath)
filePath = "/home/ec2-user/my_project/pdfFiles/Demo.pdf"
reader = PDF::Reader::Turtletext.new(filePath)
textangle = reader.bounding_box do
inclusive true
page 4
below "RIGHT HERE"
end
minedText = textangle.text
minedTextSize = minedText.size - 1
for i in 0..minedTextSize
if minedText[i][0].include? "WEEK 1"
puts minedText[i][1]
@lastweek = minedText[i][1]
end
if minedText[i][0].include? "WEEK 2"
puts minedText[i][1]
@previousweek = minedText[i][1]
end
end
end #def
end #module
您的 IO.copy_stream
中包含 /home/ec2user/my_project/pdfFiles/Demo.pdf
的引号不匹配。您还可以使用相同的方法获得一个没有闭包的开包。
Puts 打印到 stdout。您在视图中得到 0..36,因为 helper 正在返回其最后评估的行 (a for) 的值。明确地尝试 evaluating/returning 一些东西,例如:
def extract_value(filePath)
# some initial code
value = ''
for i in 0..minedTextSize
# some more code
value = 'something'
end
"String concatenating some #{value}"
end