Ruby on Rails URL:在to_param方法中使用其他模型数据

时间:2014-08-11 10:07:06

标签: ruby-on-rails url web-applications rails-activerecord

我是铁杆新手。我想为用户创建简单的网址,如果可能,我不想使用friendly_id。我已经可以使用此

更改网址了
#MyModel.rb
def to_param
  address
end

#MyController.rb
  @user = Admin::Account.find_by_address(params[:id])

但我真正想要的是使用名称而不是地址,但问题是,名称不属于MyModel.rb它对于OtherModel.rb而言,这是否是可疑的?请帮忙

这是我想要的样本

 #MyModel.rb
    def to_param
      name #name is a data/column from OtherModel.rb
    end

    #MyController.rb
      @user = Admin::Account.find_by_name(params[:id]) 
    #instead of using find_by_address I can now use find_by_name

这是我的模型关系的一个例子

class Admin::MyModel < ActiveRecord::Base
has_many :other_model, :class_name => 'Admin::OtherModel',  dependent: :destroy
end

class Admin::OtherModel < ActiveRecord::Base
belongs_to :my_model, :class_name => 'Admin::MyModel'
end

0 个答案:

没有答案