2012-11-18 72 views
1

我正在實現一項功能,允許Publify合併兩篇文章。在管理頁面上,我創建了以下表單(我不確定這是否適合我以後的表單),最終應該允許輸入另一個文章的ID並將其與正在查看的當前文章合併(應保留註釋但應該只有一個作者)。抓取正確的文章ID來合併Publify中的文章

此表格只能由管理員查看,但我尚未實現此邏輯。

<%= form_tag({:controller => "admin/content", :action => "merge"}, :method => "put", :class => 'article') do %> 
    <%= label_tag(:merge_with, "Article ID") %> 
    <%= text_field_tag(:merge_with) %> 
    <%= submit_tag("Merge") %> 
<% end %> 

我也在管理員/ content_controller.rb創建了以下方法

def merge 
    @current_article = Article.find(params[:id]) 
    #(this variable should grab the article ID from the form) @input_article = 
    @merged_article = @current_article + @input_article 
    return @merged_article 
end 

的問題,這是我不知道如何抓住一個從形式inputed文章ID和利用它在我的控制器中。

回答

1

這應該是您的PARAMS哈希,在PARAMS [:merge_with]

無論場你想從您提交的訪問,它會與密鑰值是標識您的PARAMS散現身該表單上的輸入字段。

編輯:

根據你那裏的代碼,您的PARAMS [:ID]值的,也要去當你打電話給控制器的合併方法,因爲你的URI將只是「管理是零/內容/合併「,當它實際上需要'admin/content/merge /:id'時。

+0

Thanks!我將爲admin/content/merge /:id創建路線,但是它應該與「merge」方法匹配嗎? – Anconia

+0

我應該如何訪問我正在查看的當前文章的ID? – Anconia

0

由於合併文章表單位於編輯文章頁面上,因此URI應該已經包含當前正在編輯的文章的ID。

所以你可以從這樣的params散列中得到它params[:id]