眼下在app /視圖/微柱/ home.html.erb我..RoR:我如何只搜索具有特定屬性的微博?
<% form_tag purchases_path, :method => 'get', :id => "products_search" do %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search", :name => nil %>
</p>
<% end %>
<% form_tag sales_path, :method => 'get', :id => "sales_search" do %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search", :name => nil %>
</p>
<% end %>
,然後在micropost.rb我有
scope :purchases, where(:kind => "purchase")
scope :sales, where(:kind => "sale")
def self.search(search)
if search
where('name LIKE ?', "%#{search}%")
else
scoped
end
end
,然後終於在microposts_controller.rb我有
def home
@microposts=Micropost.all
@[email protected]
@[email protected]
end
現在我得到一個錯誤說未定義的局部變量或方法`purchases_path」,它確實爲sales_path相同。
我想要做的只是搜索一些微博,而不是全部微博。在我的微博表中,我有一個名爲kind的專欄,可以是「購買」或「銷售」。如何更改這三段代碼,以便一次搜索搜索並僅顯示那些類型爲「購買」的微博的結果。然後其他的搜索通過,並在結果中顯示只有在一種「買賣」
這個問題(在另一篇文章)的微柱具有RoR: how can I search only microposts with a specific attribute?
爲什麼要使用舊的語法,而不是'where'條款? – apneadiving
我正在學習本教程http://railscasts.com/episodes/37-simple-search-form。也許這是我的問題 – BigBoy1337