我正在尝试创建一个非常简单的电子邮件注册表单,用户可以在其中输入他们的电子邮件并按提交。如何创建电子报部分
我想注册表单是一个部分,所以我可以在网站上的任何地方使用它。
形式进行编码是这样的: <%= form_for @subscription do |f| %>
怎么办告诉形式@subscription
是一个Subscription.new
如果说,当前视图,控制器和行动是主页?
谢谢!
我正在尝试创建一个非常简单的电子邮件注册表单,用户可以在其中输入他们的电子邮件并按提交。如何创建电子报部分
我想注册表单是一个部分,所以我可以在网站上的任何地方使用它。
形式进行编码是这样的: <%= form_for @subscription do |f| %>
怎么办告诉形式@subscription
是一个Subscription.new
如果说,当前视图,控制器和行动是主页?
谢谢!
作为一个选项,你可以这样做:虽然
<%= form_for Subscription.new do |f| %>
有一件事,我还没有尝试过这个自己。尝试一下,看看它是否有效。
编辑:
对不起,我没能在第一读取的问题。 你可以在家里控制器@subscription
实例变量设置为Subscription.new
,然后,把它传递给部分(主视图内)是这样的:
<%= render partial, :subscription => @subscription %>
希望这有助于。
你必须确保@subscription
被实例化调用部分之前......或者做:
<%= form_for @subscription || Subscription.new do |f| %>
所以,如果@subscription
存在,它使用它。如果不是,它会回落到Subscription.new
您可以直接在家里的行动宣告@subscription
为Subscription.new