我試圖在單個顯示頁面上顯示單個抓取的語句,但它不起作用。顯示操作不起作用
這是我的錯誤:(截圖)
下面是用show動作在它的控制器:
class LinksController < ApplicationController
def index
@links = Link.all
end
def show
@link = Link.find(params[:id])
end
def craigslist_scrape
require 'open-uri'
url = "https://losangeles.craigslist.org/search/web"
page = Nokogiri::HTML(open(url))
@craigslist_info = page.css("ul.rows")
@link_info = page.css("li.result-row p.result-info a.result-title.hdrlnk")
@date = page.css("li.result-row p.result-info time.result-date")
@link_info.each_with_index do |link, index|
Link.new(:link_info => link.text, :date => @date[index].text).save
end
end
private
def set_link
@link = Link.find(params[:id])
end
def link_params
params.require(:link).permit(:link_info, :date)
end
鏈路模型:
class Link < ApplicationRecord
end
路線:
Rails.application.routes.draw do
root 'links#craigslist_scrape'
resources :links
end
craigslist.html.erb,在這裏我把節目鏈接,以及:
<% @link_info.each_with_index do |link, index| %>
<h2><%= "Title of the job: #{link.text}" %></h2>
<p><%= "Date: #{@date[index].text}" %></p>
<h6><%= link_to 'Show', link_path(link) %></h6>
<% end %>
show.html.erb:
<p>
<strong>Link:</strong>
<%= @link.link_info %>
</p>
<p>
<strong>Date:</strong>
<%= @link.date %>
</p>
附加的craigslist_scrape.html.erb
截圖.. 。
你能告訴我什麼是在循環'link'變量的值? – ashvin
@ashvin,不知道我是否正確理解你的問題。讓我知道如果我的回答沒有回答它...這是一個craigslist鏈接...讓我附上'craigslist.html.erb'的截圖。那裏的'show'動作會轉到上面問題中的屏幕截圖... – user273072545345
@如果您問我在第二個屏幕截圖中將顯示動作懸停時所看到的內容...它以'http://localhost:3000/links/etc ...'...有幫助嗎? – user273072545345