Ruby on rails 3 Rails 3.1未定义的方法,具有多个&;属于
我的Rails 3.1应用程序有问题。我有两个控制器和模型,分别命名为县/县和镇/镇 县模型有Ruby on rails 3 Rails 3.1未定义的方法,具有多个&;属于,ruby-on-rails-3,ruby-on-rails-3.1,has-many,Ruby On Rails 3,Ruby On Rails 3.1,Has Many,我的Rails 3.1应用程序有问题。我有两个控制器和模型,分别命名为县/县和镇/镇 县模型有多个:城镇,镇模型有属于:县 我试图在城镇索引页面上显示县名称,以将标题显示为“城镇所在地-县名称-”。但是,当我将%h1 Towns放入{@Towns.country.name}中时,我得到一个未定义的方法“country”错误 索引的控制器为 def index @towns = Town.all end 对于县控制员: def index @counties = County.a
多个:城镇,镇模型有属于:县
我试图在城镇索引页面上显示县名称,以将标题显示为“城镇所在地-县名称-”。但是,当我将%h1 Towns放入{@Towns.country.name}
中时,我得到一个未定义的方法“country”
错误
索引的控制器为
def index
@towns = Town.all
end
对于县控制员:
def index
@counties = County.all
end
我的routes.rb
是
resources :counties, :path => "/locations" do
resources :towns, :path => "/"
end
我做错了什么
编辑:在我的城镇/索引视图中使用此选项,它将显示城镇.country.id
和城镇.country.name
:
- @towns.each do |town|
%tr
%td= town.county.id
%td= town.county.name
%td= town.name
%td= town.description
%td= town.slug
@towns
是。。。城镇。不是一个单独的城镇。城镇集合没有县(根据您的模型),只有单个城镇有县
如果你在城镇索引页面上,试图显示一个县的城镇,你不清楚你到底在做什么——你是在为每个城镇列出该县,并试图显示该县的其他城镇吗?这将是town.country.towns
(但您可能希望删除“当前”城镇)
我不知道你为什么要为县
控制器显示任何内容,因为你在城镇
页面上。如果你想得到所有的县,那么就这样做,但是县控制员没有参与。我在州和国家(与城镇和县)也有类似的问题。
对于您的城镇迁移,您是否有一个整数来引用县(请参见下面的县id)
好的,我试过Town.country.name
和@Town.country.name
,但它显示的信息与婚礼网站相同。我想显示英国可用的县,然后在每个县下,我想显示该县可用的城镇:)显示该县的城镇不起作用either@deanpcmad如果你想显示县,你在城镇指数上做什么?听起来你说的是县索引。@deanpcmad那里可能没有一个@镇;如果您在@towns
上迭代,您可能会有一个town
<代码>城镇.县.名称
是正确的。我觉得有点混乱。/locations页面显示可用的县。然后单击该位置,例如/locations/hampshire,我想显示可用的城镇,然后转到/locations/hampshire/southampton。我一直在试图在城镇索引页面上显示县名,显示所选县中的城镇。我还有一个问题,我选择的任何一个县都会显示所有的城镇。我猜这可能与县政府有关。为我查找并修复它=]
class CreateTowns < ActiveRecord::Migration
def change
create_table :towns do |t|
t.string :name
t.integer :county_id
t.timestamps
end
end
end
%tr
%td= town.county.id
%td= County.find(town.county_id).name
%td= town.name
%td= town.description
%td= town.slug