2013-06-04 63 views
1

我很難搞清楚爲什麼這個文本字段是空白的。根據我讀過的所有Ruby教程,它應該有問題的文本值(作爲HTML中的值屬性)。在表單中使用text_field集合

這裏是我的標記:

<%= form_tag :action => "create" do |f| %> 
    <% @questions.each do |q| %> 
     <span><%=q.text %></span> <!-- This was a test, it displays it properly --> 
     <%= text_field :q, :text %> <!-- This is the problem line --> 
    <% end %> 
    <%= submit_tag %> 
<% end %> 

這裏是我的控制器:

class Admin::QuestionsController < ApplicationController 
# TODO: Validations 

    def new 
    @questions = Array.new 
    question = Question.new :text => 'winner' 
    @questions.push(question) 
    end 
... 

這裏是我的模型:

class Question < ActiveRecord::Base 
attr_accessible :text 
end 

任何幫助,將不勝感激。跨度似乎是正確顯示文本,但text_field不會顯示它裏面

回答

2

行更改爲

<%= text_field_tag 'field_id', q.text %> 
+0

爲什麼我不能爲此使用方法窗體幫助器? Q畢竟是Question類的一個實例。儘管謝謝你的回答! – Tim

0

嘗試這些:

<%= f.text_field :text, :value => q.to_s %> 

<%= text_field_tag :text, q.to_s %> 
+0

這些作品都沒有。第一個產生以下錯誤: 未定義的方法'text_field'爲零:NilClass 第二個生成文本字段,內部具有以下內容: #<問題:0x3717a20> 將第二個更改爲q.text.to_s可以工作。 – Tim