2016-08-21 16 views
0

私は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我々はそれを把握して願って!

+1

愚かな質問 - あなたはその移行を実行しましたか? – larz

+0

お返事ありがとうございます。はい、私はしました:rake db:migrate。何が問題になると思いますか? –

+0

スタックトレースメイトを完全に与えることができますか? –

答えて

0

最初に試してくださいsudo gem install simple_form、次にrails g simple_form:installです。うまくいきたいです。

+0

はい、問題を解決していないローカルコンピュータでのみ動作します –

+0

'gem 'simple_form''をgemfileにインストールして 'bundle install'を実行しましたか? –

+0

私はsimple_formをインストールしてsudo gemをインストールしました。また、g simple_form:installというレールもインストールしましたが、まだ動作していません。私は、私がクラウドIDE Cloud9を使用していることを言及すべきだと思います。 –