我的应用程序允许用户查看问题列表,并允许他们投票选择(唯一)。我有一个users
表,一个questions
表,一个options
表和一个answers
表。
我已创建迁移以将列message
添加到answers
表,我可以在页面上显示消息,只需要将消息实际发送到数据库表 - 这是允许用户投票的按钮:
<%= link_to 'Vote', question_option_upvote_path(@question, option), data: { confirm: 'Are you sure you want to vote for this option?' }, :class => 'voteNow', method: :post %>
当用户点击投票时,我很难连接发送的textarea,我只是使用<%= text_area :message, autofocus: true %>
来创建我自己的textarea。我需要为此设置一个完整的表单,还是有一种简单的方法来在用户投票时提取内容?我的选项控制器是:
class OptionsController < ApplicationController
def create
@question = Question.find(params[:question_id])
@option = @question.options.create(option_param)
redirect_to question_path(@question)
end
def upvote
@question = Question.find(params[:question_id])
@option = Option.find(params[:option_id])
Answer.create(user_id: current_user.id, question_id: @question.id, option_id: @option.id)
redirect_to question_path(@question)
end
private
def option_param
params.require(:option).permit(:option_text)
end
end
如果我需要在此消息中包含任何其他内容,请与我们联系!