2016-08-21 104 views
0

我是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' %> 

非常感謝你,我希望我們弄明白!

+1

愚蠢的問題 - 你運行遷移? – larz

+0

感謝您的回答。是的,我做了:rake db:migrate。你認爲可能是什麼問題? –

+0

你可以給完整的堆棧跟蹤隊友,這將是有益的。 –

回答

0

首先嚐試sudo gem install simple_form,然後rails g simple_form:install。希望它有幫助

+0

是的,但它會在'你的Gemfile未解決問題 –

+0

是否安裝'寶石「simple_form」本地計算機上只工作和運行'捆綁install'? –

+0

我做了sudo gem安裝simple_form和rails g simple_form:安裝,它仍然無法正常工作。我想我應該提到我正在使用雲IDE Cloud9。 –