您好我在我的网站上添加了投票权。用户可以投票是或否。我创建了表单,但只返回错误,仅适用于是按钮
<%= form_for([@post, @post.votes.build]) do |c| %>
<%= c.input value: 1, type: :hidden %>
<%= c.submit :Yes, class: "btn btn-large btn-primary" %>
<% end %>
这是错误:我们很抱歉,但出了点问题。
理论上我想做出这样的形式:
<div class="text-success">
Votează inițiativa<br>
<button class="btn btn-large btn-primary">PRO</button> sau
<button class="btn btn-danger">CONTRA</button>
</div>
见我的控制器:
class VotesController < ApplicationController
def new
end
def create
@post = Post.find(params[:id])
@votes = @post.votes.create(votes_params)
@votes.user = current_user
@votes.save
redirect_to @votes
end
private
def votes_params
votes_params = params.require(:votes).permit(:stare)
end
end
看我的模特:
class Vote < ActiveRecord::Base
belongs_to :user, dependent: :destroy
belongs_to :post
end
我该怎么做?
答案 0 :(得分:0)
您需要发布您的实际错误 - 通常是键入heroku logs
(听起来您已经让它在生产中运行)
从我所看到的情况来看,我试着像这样修复错误:
<%= form_for([@post, @post.votes.build]) do |c| %>
<%= c.input value: 1, type: :hidden %>
<%= c.submit :Yes, class: "btn btn-large btn-primary" %>
<% end %>
def create
@post = Post.find(params[:id])
@votes = @post.votes.create(votes_params)
@votes.save
redirect_to @post
end
private
def votes_params
params.require(:post).permit(:stare).merge(user_id: current_user.id)
end
我认为您的params hash
会有些不正确 - 您需要发帖以帮助我们了解如何正确修复错误