2012-03-14 106 views
0

railsnoobquestion:我想開發一個功能,用戶可以在軌道保存對象,然後轉發到窗體再次,創建另一個對象。按鈕:創建一個對象,然後重定向到創建另一個?

我可以想到兩個選擇: - 創建一條全新的路線 - 將數據添加到餐館發佈對象,檢查控制器中的數據?

有沒有人有類似的功能嗎?

thx

回答

0

的解決方案是創建一個隱藏的表單字段與另一個提交按鈕:

%input#create_another{:name => "create_another", :type => "hidden", :value => 0 } 
%a.btn.btn-info#submit_another 

然後使用JavaScript來提交表單:

jQuery(document).ready(function() { 
    $("#submit_another").click(function() { 
    $('#create_another').attr('value','1'); 
    console.log($('#create_another').attr('value')); 
    $(".formtastic").submit(); 
    return true; 
    }); 
}); 

各自的控制器內,於我而言,類別控制器:

if params[:create_another].nil? 
    @create_another = false 
else 
    @create_another = (params[:create_another] == "1") 
end 
respond_to do |format| 
    if @category.save 
    if @create_another 
     format.html { redirect_to new_restaurant_category_path(@restaurant), notice: I18n.t(:entry_successfully_created, :name => I18n.t(:category_singular)) } 
0

以下是帖子資源的標準創建操作。

def create 
    @post = Post.new params[:post] 

    if @post.save 
    redirect_to @post, notice: 'Post was successfully created.' 
    else 
    render :new 
    end 
end 

所有你需要做的是改變重定向從@postnew_post_path

redirect_to new_post_path, notice: 'Post was successfully created.'

這就是你想要的?

+0

謝謝,這是有益的。我會發布我的解決方案,類似於你的解決方案。 – Hendrik 2012-03-15 18:18:26