Ruby on rails 为什么这不起作用
试图将这些信息传递到表单中Ruby on rails 为什么这不起作用,ruby-on-rails,yield,Ruby On Rails,Yield,试图将这些信息传递到表单中 <% provide(:title,"Edit Type") %> <% provide(:content,"Edit Type") %> <% provide(:button,"Update") %> <% provide(:link,"form_for(@type, url: product_type_path, method: :patch)") %> <!-- edit for product_type
<% provide(:title,"Edit Type") %>
<% provide(:content,"Edit Type") %>
<% provide(:button,"Update") %>
<% provide(:link,"form_for(@type, url: product_type_path, method: :patch)") %> <!-- edit for product_type model(@type) url: go to product_type controller with update action -->
<%= render 'form' %>
_form.html.erb
生成的错误要么是隐式符号转换为整数,要么是与关键字sure结尾相关的错误
这有什么问题。链接下的这个复杂帮助程序将无法按预期工作
<% provide(:link,"form_for(@type, url: product_type_path, method: :patch)")
所有这些都将在视图中呈现以下字符串
形式_for@type,url:产品类型路径,方法::补丁
您甚至不能这样做,因为您没有块,而且如果您修改字符串以包含do | f |,它无论如何都不会将其识别为块的开头
一般来说,我认为你想做的是不可能的,即使你能让它工作,从可读性和可能的安全性来说,这将是一个非常糟糕的主意
provide和content_for是存储简单标记并将其传递到各种视图的好方法,但是标记必须是自包含的,例如不能作为块的开头
您可以使用它来存储原始信息,但我看不到它与表单_for helper一起使用 我很确定你不能通过这样的表格。那么使用大量的提供和收益率是不是不好呢@Sergiotulentsev当然,谢谢你让我知道。如果你不回答的话,我会浪费时间到处修修补补的。
<% provide(:link,"form_for(@type, url: product_type_path, method: :patch)")