我需要一个属应该属于多属性的模型。我使用Rails 4.2.1与2.2.1红宝石和SQLServer 2014年我在配置/初始化/加是inflections.rb的变形器:导轨不规则与路由和表名的导入器错误
ActiveSupport::Inflector.inflections(:en) do |inflect|
inflect.irregular 'genus', 'genera'
end
每this question。我在Rails的控制台检查并正确单一化和多元状态,而当我跑
rails generate scaffold Genus name:string
表名是正确调用属,它看起来像的东西是正确的。
但是,当我尝试实际转到视图时,出现错误。对于索引页(http://0.0.0.0:3000/genera)我从数据库中,因为它正试图访问一个表名为属得到一个错误:
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>
对于新(http://0.0.0.0:3000/genera/new),我得到一个路径错误:
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
我显然做错了什么,但是我找不到任何搜索这样的错误的东西。除了添加Inflector之外,我还需要做些什么吗?起初我以为这是SQLServer的错,但这不会影响新视图中的路由,是不是?
什么是你的确切的Rails版本? 4点什么点? – MarsAtomic
它是4.2;我无法检查修补程序的版本,因为我离开了我的电脑,但我想说它是12.这是在其中一个版本中的已知问题? – Maltiriel
4.2.1。显然我增加了一个额外的2 ...这是固定在一个更新的补丁? – Maltiriel