Ruby on rails RubyonRails:在索引页上的new和edit表单上使用相同的实例变量
在我的索引页上,我显示“任务”列表 我有一个按钮在顶部“添加一个任务”与模态部分使用简单的形式。这个很好用 在我的任务列表中,我为每个任务显示一个编辑和删除链接。Delete工作正常,但edit实际上不起作用,因为它使用了我在控制器中设置的@task=task.new。因此,“编辑”模式实际上是一种“新”模式 理想情况下,我希望@task在我的每个迭代器中等于“task” 我已经尝试了许多不同的方法来解决这个问题,主要是使用params: 我的编辑链接是:Ruby on rails RubyonRails:在索引页上的new和edit表单上使用相同的实例变量,ruby-on-rails,modal-dialog,simple-form,Ruby On Rails,Modal Dialog,Simple Form,在我的索引页上,我显示“任务”列表 我有一个按钮在顶部“添加一个任务”与模态部分使用简单的形式。这个很好用 在我的任务列表中,我为每个任务显示一个编辑和删除链接。Delete工作正常,但edit实际上不起作用,因为它使用了我在控制器中设置的@task=task.new。因此,“编辑”模式实际上是一种“新”模式 理想情况下,我希望@task在我的每个迭代器中等于“task” 我已经尝试了许多不同的方法来解决这个问题,主要是使用params: 我的编辑链接是: <% @tasks.ea
<% @tasks.each do |task| %>
...
<%= link_to 'Edit', "?task_id=#{task.id}", { 'data-toggle' => 'modal', 'data-target' => '#myModal' } %>
<% end %>
然而,这也不起作用,@task似乎是一次性设置的,它永远不会进入params的状态
这行吗?rails中解决此类问题的最佳实践是什么
谢谢你的回答 您可以将任务id作为数据参数传递 看法
你能发布完整的控制器和视图吗?我想最好能更好地理解这个问题
if params.has_key?(:task_id)
@task = Task.find(params[:task_id].to_i)
else
@task = Task.new
end
<%= link_to 'Edit', "", { 'data-task-id' => task.id, 'data-toggle' => 'modal', 'data-target' => '#myModal' } %>
if params.has_key?(:data-task-id)