2016-08-21 105 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。 –