1

SimpleFormがインストールされていないかのように、この奇妙なエラーが発生します。

undefined method `simple_form_for'

SimpleFormは私のgemfileにあり、インストールしました:

Using simple_form (2.0.2)

Powサーバーで実行しているので、毎回再起動します。

#events_controller.rb
class admin::EventsController < ApplicationController
  def new
    @event = Event.new
  end

#Event.rb
class Event
  include Mongoid::Document
  field :summary
  field :start_date
  field :end_date
end

#new.html.haml
= simple_form_for [:admin, @event] do |f|
  = f.input :summary
  = f.input :start_date
  = f.input :end_date

SimpleFormがインストールされていないように見える理由はありますか?

4

2 に答える 2

1

gemをインストールした後、ジェネレーターを実行しましたか?コンソールでこれを実行する必要があります:

rails generate simple_form:install
于 2012-09-27T23:19:30.897 に答える
0

私はコマンドを試しました:rails generate simple_form:install

そして-それは実行されませんでした。代わりに、出力は私がrailsに不正な形式のコマンドラインを与えたように見え、それは使用法ファイルのコピーを返しました。

次に、RubyMine内で再試行しましたが、今回はエラートレースバックが発生しました。最初の行を以下に示します。

/home/user1/.rvm/gems/ruby-2.0.0-p247/gems/railties-4.0.0/lib/rails/generators/base.rb:265:in `const_defined?': wrong constant name SimpleForm:installGenerator 

base.rbの265〜269行をコメントアウトした後:

#  if last && last.const_defined?(last_name.camelize, false)
#     raise Error, "The name '#{class_name}' is either already used in your application " <<
#            "or reserved by Ruby on Rails. Please choose an alternative and run "  <<
#            "this generator again."
#  end

コマンドを再度実行すると、次のようになります。

/home/user1/.rvm/rubies/ruby-2.0.0-p247/bin/ruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /home/user1/RubymineProjects/TravelAid/bin/rails generate generator simple_form:install -s
      create  lib/generators/simple_form:install
      create  lib/generators/simple_form:install/simple_form:install_generator.rb
      create  lib/generators/simple_form:install/USAGE
      create  lib/generators/simple_form:install/templates

Process finished with exit code 0

これはかなり良さそうに見えますが、simple_formがまだ機能するかどうかを確認するために戻っていません。

lib / generatorの下に、私は持っています:

simple_form
  templates
  simple_form_generator.rb
  USAGE
simple_form.install
  templates
  simple_form.install_generator.rb  (created about 18 minutes ago - consistent with new)
  USAGE

Rubymine内でRails4.0.0とruby-2.0.0-p247を実行しています

于 2013-07-09T06:40:42.823 に答える