私はRubyとRuby on Railsの初心者で、2日前に開始しました。 初めて基本アプリケーションを作成しようとしていますが、simple_forms gemを使用しようとするとこのエラーが発生します。Ruby on Railsシンプルフォームエラー
コードを表示する前にsimple_formsコードを削除すると動作し、/ orders/new pageにリダイレクトされ、HTMLページが表示されるように指定します。
これは私のエラーです:ライン#2を上昇受注で NoMethodErrorは#新しい 表示/home/ubuntu/workspace/app/views/orders/_form.html.erb: 未定義のメソッド `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' %>
はどうもありがとうございました、I我々はそれを把握して願って!
愚かな質問 - あなたはその移行を実行しましたか? – larz
お返事ありがとうございます。はい、私はしました:rake db:migrate。何が問題になると思いますか? –
スタックトレースメイトを完全に与えることができますか? –