我有票和桌子模型。票证属于表。
我想显示一个表索引,每个索引都应该有一个指向分配了相应表的新票证的按钮。
票务控制器:
def new_from_table
@ticket = Ticket.new(table_id: table_id)
end
在我看来:
<% @tables.each do |table| %>
<tr>
<td><%= table.name %></td>
<td><%= link_to 'Add', new_from_table_path(:table_id => table.id), class: "btn btn-sm btn-success" %></td>
</td>
</tr>
和路线:
get 'new_from_table', to: 'tickets#new_from_table', as: :new_from_table
但是我不知道如何在循环中将table.id传递给ticket.table_id。
以上解决方案返回:
Ticket的未定义局部变量或方法'table_id'...
有什么建议吗?
答案 0 :(得分:1)
Ticket的未定义局部变量或方法'table_id'...
这意味着,当在controller#action中通过路径new_from_table_path(:table_id => table.id)
传递table_id时,该参数table_id将被动态地视为params[:table_id]
def new_from_table
@ticket = Ticket.new(table_id: params[:table_id])
end