我有一个 Rails 应用程序,用户可以在其中从索引页面的数据表( cosmics )中进行选择。我在该页面上有一个按钮,该按钮连接到自定义路由start_batch。路由出现在 rake:routes 上,尽管没有 GET 或 PUT。
当它被按下时,我想在另外两个表中创建行:batches和batch_details。
相反,当我按下按钮时,Rails 正试图进入cosmics控制器的显示操作。
耙:路线
start_batch /cosmics/start_batch(.:format) cosmics#start_batch
宇宙控制器
def start_batch
@batch = Batch.create!(:status => 'created',:status_timestamp => Time.now)
@cosmics.where(:selected == true) do |cosmic|
@batch_detail = BatchDetail.create!(:batch_id => @batch.id, :gene => @cosmic.gene, :mut_freq => @cosmic.mut_freq)
@batch_detail.save
end
end
路线.rb
resources :batches do
resources :batch_details
end
resources :cosmics
match '/cosmics/start_batch', :to => 'cosmics#start_batch', :as => 'start_batch'
宇宙/index.html.erb
<%= link_to 'Process', start_batch_path, :class =>"btn btn-primary" %>
我是否有一个我看不到的错误,或者我这样做完全不正确?