我是Ruby和Ruby on Rails初学者,2天前开始。 我想第一次构建一个基本的应用程序,当我尝试使用simple_forms gem时出现此错误。Ruby on Rails简单形式错误
之前,我告诉你我要指定,如果我删除simple_forms代码,它的工作原理,它重定向我/命令/新页面的代码,它显示HTML页面。
这是我的错误:在订单#新 显示/home/ubuntu/workspace/app/views/orders/_form.html.erb NoMethodError在行#2提出: 未定义的方法`amazonurl”为#
我的代码:
的routes.rb
Rails.application.routes.draw do
resources :orders
root 'orders#index'
end
orders_controller
class OrdersController < ApplicationController
def index
end
def new
@order = Order.new
end
def create
@order = Order.new(order_params)
end
private
def order_params
params.require(:order).permit(:amazonurl, :dname, :daddress, :dphone)
end
end
迁移
class CreateOrders < ActiveRecord::Migration
def change
create_table :orders do |t|
t.string :amazonurl
t.text :dname
t.text :daddress
t.text :dphone
t.timestamps null: false
end
end
end
表(_form.html.erb)
<%= simple_form_for @order do |f| %>
<%= f.input :amazonurl %>
<%= f.input :dname %>
<%= f.input :daddress %>
<%= f.input :dphone %>
<%= f.button :submit %>
<% end %>
而且我new.html.erb文件
<h1>New Order</h1>
<%= render 'form' %>
非常感谢你,我希望我们弄明白!
愚蠢的问题 - 你运行迁移? – larz
感谢您的回答。是的,我做了:rake db:migrate。你认为可能是什么问题? –
你可以给完整的堆栈跟踪队友,这将是有益的。 –