2016-07-25 3 views
0

私は属に複数形にする必要があります属のモデルが必要です。私は、Ruby 2.2.1とRailsの4.2.1を使用していますし、SQLServerの2014年には、私は、設定/初期化子/ inflections.rbでインフレクタを追加しました:this questionあたりRails irregularルーティングとtablenameでインフレーターのエラー

ActiveSupport::Inflector.inflections(:en) do |inflect| 
    inflect.irregular 'genus', 'genera' 
end 

を。私はRailsのコンソールで確認し、それが正しく単数と複数形、と私は

rails generate scaffold Genus name:string 

を実行したときにテーブル名が正しく属と呼ばれていた、と物事は正しかったようにそれが見えました。

実際にビューに移動しようとすると、エラーが発生します。テーブルの名前属にアクセスしようとしているとして、インデックスページ(http://0.0.0.0:3000/genera)のために私は、データベースからのエラーを取得しています:

undefined method `genus_index_path' for #<#<Class:0x007fd9b9604380>:0x007fd993e8a2f0> 
Extracted source (around line #1):     
1 <%= form_for(@genus) do |f| %> 
2 <% if @genus.errors.any? %> 
3  <div id="error_explanation"> 
4  <h2><%= pluralize(@genus.errors.count, "error") %> prohibited this genus from being saved:</h2> 
5 
6  <ul> 

Trace of template inclusion: app/views/genera/new.html.erb 
:新しい( http://0.0.0.0:3000/genera/new)について

TinyTds::Error: Invalid object name 'genus'.: EXEC sp_executesql N'SELECT [genus].* FROM [genus]' 
Extracted source (around line #14): 
12 
13 <tbody> 
14 <% @genera.each do |genus| %> 
15  <tr> 
16  <td><%= genus.name %></td> 
17  <td><%= link_to 'Show', genus %></td> 

を、私はパスのエラーを取得します

私は明らかに何か間違っていますが、このようなエラーを検索するものは何も見つかりません。そのインフレクターを追加する以外に何かをする必要がありますか?最初は私は何とかSQLServerのせいだと思っていましたが、それは新しいビューでルーティングに影響しませんでしたか?

+0

Railsのバージョンは何ですか? 4ドット何ドット何? – MarsAtomic

+0

それは4.2です。私は自分のコンピュータから離れているので、パッチのバージョンを確認することはできませんが、私はそれが12だと言いたいと思います。これはバージョンの1つで既知の問題ですか? – Maltiriel

+0

4.2.1。どうやら私は余分な2を追加しました...これはもっと最近のパッチで修正されていますか? – Maltiriel

答えて

0

問題は、Webサーバーを再起動するのを忘れていることが判明しました。どうやらInflectorsへの変更はWebサーバーでは取り上げられないのですが、もちろんレールを走らせるだけでコマンドラインから変更が見られますので...愚かな間違いですが、他に誰かが起こったら、これを願ってください彼らを助けるでしょう。

関連する問題