2016-10-03 64 views
0

我正在开发一个项目,并试图实施一个反馈系统。有三个按钮,正面,中立和负面,当用户点击一个按钮时,会询问他们是否想要提交更多反馈并被带到新的反馈表单。然而,相反,我想要的是,当按下按钮时,记录将与他们按下的按钮设置的模型的评分字段一起保存。按下按钮时创建一个模型记录

然后,当用户提供更多的反馈时,他们会被带到编辑页面以获得反馈。我真的不知道如何去做这件事,我需要按钮上的一些JavaScript?或者轨道有一个方法可以做到这一点?

谢谢

+0

你到目前为止尝试过什么? – spickermann

+0

我并不确定从哪里开始,就像我现在所说的那样,模型记录是通过转到新窗体创建和保存的。 – user2320239

回答

0

为每个带隐藏字段的按钮创建一个表单。将隐藏字段值设置为正值,中性或负值。您尝试在此处使用枚举。

<% form_for :feedback, url: feedback_path do |f| %> 
    <%= f.hidden_field :sentiment, value: 'positive' %></td> 
    <%= submit_tag "Positive" %> 
<% end %> 

<% form_for :feedback, url: feedback_path do |f| %> 
    <%= f.hidden_field :sentiment, value: 'neutral' %></td> 
    <%= submit_tag "Neutral" %> 
<% end %> 

<% form_for :feedback, url: feedback_path do |f| %> 
    <%= f.hidden_field :sentiment, value: 'negative' %></td> 
    <%= submit_tag "Negative" %> 
<% end %> 

你可以把上面的代码放在一个简单的循环中来干掉它。

+0

嗨,感谢您的帮助,虽然当我尝试这个时,我得到一个错误说: 没有路由匹配{:action =>“update”,:controller =>“feedbacks”}}缺少必需的键:[:id] 我认为这意味着它试图调用update方法而不是create方法? – user2320239

+0

以上只是你如何做到这一点的一个例子。有关详细信息,请参阅Rails文档。这应该有所帮助:http://guides.rubyonrails.org/form_helpers.html#binding-a-form-to-an-object –

相关问题