2010-10-01 83 views
2

(對不起,很長的文章)好吧,所以我遇到了一些問題,我正在嘗試,我一直試圖修復它很長一段時間,現在是時候尋求幫助。獲取「未知屬性錯誤」任何人有幫助修復?

好了,我有這些 「磨牀」,我希望用戶投票爲每一個,

我做了兩個支架:

磨牀grinder:string posted_timestamp:datetime poster_ip:string votes_up:integer votes_down:整數

投票grinder_id:integer choice:string voter_ip:string

所以我創造了這個作爲 磨牀指數

<% @grinders.each do |grinder| %> 
<div id="main"> 
<div style="float:left; height:80px; width:50px"> 
    <div class='up'> 
     <% form_for(@vote) do |u| %> 
      <%= u.hidden_field :grinder_id, :value => grinder.id %> 
      <%= u.hidden_field :choice, :value => "down" %> 
      <%= u.submit 'Create' %> 
     <% end %> 
    </div> 
    <center><%=h grinder.votes_up - grinder.votes_down %></center> 
    <div class='down'> 
     <% form_for(@vote) do |d| %> 
      <%= d.hidden_field :grinder_id, :value => grinder.id %> 
      <%= d.hidden_field :choice, :value => "down" %> 
      <%= d.submit 'Create' %> 
     <% end %> 
    </div> 

</div> 


<div class='box' >"<strong>It grinds our gears </strong><%=h grinder.grinder %>"</div> 




</div> 
</div> 

<% end %> 

打磨機索引頁面看起來像這樣,http://grab.by/6Eik

我還添加了@vote = Vote.newgrinders controller的索引方法..

而在votes controller我修改的方法創建一個位。

def create 
@vote = Vote.new(params[:vote]) 
@grinder.voter_ip = request.remote_ip 
respond_to do |format| 
    if @vote.save 
    format.html { redirect_to(@vote, :notice => 'Vote was successfully created.') } 
    format.xml { render :xml => @vote, :status => :created, :location => @vote } 
    else 
    format.html { render :action => "new" } 
    format.xml { render :xml => @vote.errors, :status => :unprocessable_entity } 
    end 
end 
end 

但隨時我嘗試投票,我得到以下錯誤。 http://grab.by/6EiQ

回答

1

固定它的傢伙,原來,去年移民我沒工作......於是,我只好解決它,然後執行移民。

0

模型中指定投票和研磨器之間的關係如何?

它通過了不屬於投票模式的voter_choice。 的選擇是壽

您認爲改變部分:

from <%= d.hidden_field :voter_choice, :value => "down" %> 
to <%= d.hidden_field :choice, :value => "down" %> 
+0

vote.rb'belongs_to:grinder' grinder.rb'has_many:votes',我已經改變了視圖,同樣的錯誤。不過謝謝。 – Rickmasta 2010-10-01 05:04:30

+0

from console if u do:v = Vote.new; v.inspect – CLod 2010-10-01 05:09:20

相關問題