投票按钮,是和否。轨道4

时间:2014-03-13 10:36:06

标签: ruby-on-rails forms submit voting

您好我在我的网站上添加了投票权。用户可以投票是或否。我创建了表单,但只返回错误,仅适用于是按钮

<%= 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

我该怎么做?

1 个答案:

答案 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会有些不正确 - 您需要发帖以帮助我们了解如何正确修复错误