联系表格显示空白

时间:2014-04-16 18:20:22

标签: ruby-on-rails

我不确定我做了什么,但我的联系表单字段没有显示在页面上。我正在关注railscast 219.我将原始行<%= form_for @message do |f| %>更改为<%= form_for Message.new do |f| %>,因为我收到了字段的未定义方法。

new.html.erb:

<%= form_for Message.new do |f| %>
  <p>
    <%= f.label :email %><br />
    <%= f.text_field :email %>
  </p>
  <p>
    <%= f.label :content, "Message" %><br />
    <%= f.text_area :content %>
  </p>
  <p><%= f.submit "Send Message" %></p>
<% end %>

联系人控制器:

  def new
      @message = Message.new
    end

    def create
      @message = Message.new(params[:message])
      if @message.valid?
        # TODO send message here
        flash[:notice] = "Message sent! Thank you for contacting us."
        redirect_to root_url
      else
        render :action => 'new'
      end
    end
  end

联系模式:

   include ActiveModel::Validations
    include ActiveModel::Conversion
    extend ActiveModel::Naming

    attr_accessor :email, :content

    validates_length_of :content, :maximum => 500

    def initialize(attributes = {})
      attributes.each do |name, value|
        send("#{name}=", value)
      end
    end

    def persisted?
      false
    end
  end

1 个答案:

答案 0 :(得分:1)

您的变量指向消息模型,并且您只包含联系人模型。更改变量或创建新的消息模型。