0

我正在学习 HAML,但我对 from_for 有疑问

%b New Advert!

- form_for @car, :url => { :action => "create" } do |f|
  = f.text_field :body 
  = f.submit t('advert.form.save')

我的控制器

class AdvertController < ApplicationController
  def new
    @car = Car.new
  end

  def create
    @car = Car.new(params[:car])
  end
end

还有我的模型 car.rb

class Car < ActiveRecord::Base
  attr_accessible :title, :body
end

但我有一个错误:

# 未定义的方法“body”

广告中的 NoMethodError#new

显示 /my_project/app/views/advert/new.html.haml 其中第 4 行提出

带有“=”的UPD form_for 不起作用

= form_for @car, :url => { :action => "create" } do |f|
      = f.text_field :body 
      = f.submit t('advert.form.save')
4

1 回答 1

4

我可以在这里看到两个错误:首先你应该使用=而不是-for form_form,确实=会输出结果而-不会。

作为form_for表单的返回 HTML,您希望将其写在页面上;)

至于你的错误的原因,我不完全确定,但似乎你的Car模型没有body字段,所以它没有body方法

于 2012-10-30T19:40:49.610 回答