2011-08-04 9 views
0

Rails複数化とキャメルケースで混乱します。特に私の長いしかし明確な名前と。長いクラス名でRailsルーティングエラーが発生する

私はUserモデルとAccountモデルを持っています。私はまた、user_to_account_log_historyモデルと2つの間の転送を保存するためのコントローラがあります。関係が設定されます。以下の作成

私が走った

...

$ rails generate controller UserToAccountLogHistories 

...:

user_usertoaccountloghistories GET /users/:user_id/usertoaccountloghistories(.:format) {:action=>"index", :controller=>"usertoaccountloghistories"} 

# app/controllers/user_to_account_log_histories_controller.rb 
class UserToAccountLogHistoriesController < ApplicationController 
    # a simple index method 
end 

# app/models/user_to_account_log_history.rb 
class UserToAccountLogHistory < ActiveRecord::Base 
end 

私のルートは、場所(rake routes出力、切り捨て)であると思われます

しかし、私はuninitialized constant UsertoaccountloghistoriesControllerを得ています。どうして?私はcamelcasingとそれを混乱させる複数化の長い名前だと感じる。

答えて

1

問題は、UserToAccountLogHistoriesControllerというクラスがありますが、UsertoaccountloghistoriesControllerというクラスがありません。ここでは大文字と小文字の違いに注意してください。

あなたのルートをどのように定義したのかは明らかではありませんが、実際にuser_to_account_log_historiesを参照したい場合は、usertoaccountloghistoriesを参照するルートがあると思われます。

> "hello_world".camelize 
# => "HelloWorld" 
> "helloworld".camelize 
# => "Helloworld" 
+0

ありがとう:レールコンソールで

は、以下を守って!私はアンダースコアなしでルートに入った。 –

関連する問題