繁体   English   中英

Formtastic和belongs_to关联

[英]Formtastic and belongs_to association

我正在尝试边做边学,需要一些帮助。

因此,formtastic可以处理belongs_to关联(例如Post Emirates_to:author),通过父模型的选择来呈现一个或一组单选输入。

我想做的是创建帖子,而不必在创建表单中选择作者。

我想通过隐藏的表单字段设置作者ID,但是当我尝试这样做时

 <%= f.input :author, :as => :hidden, :value => '33' %>

我得到未初始化的不变作者,并尝试了其他各种方法,这些方法使Ive无法正常工作。

Ive获得的最接近的结果是尝试自定义选择项并隐藏选择项,如下所示:

<%= f.input :author, :as => :select, :collection => ["33"], :input_html => { :style => 'visibility: hidden' } %>

但是,即使上面的内容隐藏了选择并起作用,它仍然为作者显示了一个表单标签,我不希望它显示

这是一个示例,可以更好地解释我的情况(如果Im仍未实现):

想象一下,您有一个“作者列表”页面,作为作者,您单击您的名字进入一个可以管理各种事物和创建帖子的区域。

问题:单击创建帖子并呈现表单时,您不想从一个字段中选择您的名字来告诉应用您正在创建的帖子属于您,因为您希望系统知道您的帖子因为您位于属于您的配置区域中。

我正在尝试通过使用隐藏的表单字段设置作者ID来做到这一点,以便在用户提交表单时以正确的关联保存帖子。

谁能为我提供一个如何执行此操作的示例? 我是一个学习者,也许有更好的方法可以解决这个问题,所以任何人都可以提出建议并向我指出一些好的例子

您不应在隐藏的表单字段中填充它; 用户仍然可以更改隐藏的表单字段,最后,您允许用户创建其他作者的帖子。

正确的方法是在@post.author = current_user的create动作中分配@post.author = current_user

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM