【发布时间】:2013-09-09 14:11:50
【问题描述】:
我正在使用 friendly_id gem 来处理我的 Rails 4 应用程序中的 slug。为简单起见,假设我有两个资源,Mission 和 Tasks。 任务嵌套在任务中。两种模型都使用 FriendlyId,并且 slug 工作正常。因为一个Task属于一个Mission,所以一个Task上面有一个mission_id。
我在更新任务时遇到了问题。因为 mission_id 是以 slug 的形式通过参数(friendly_id 字符串而不是整数 id),所以 Task 上的 mission_id 正在更新为 0,因为它需要一个整数并且正在传递一个字符串。
有人对如何解决这个问题有任何想法吗?
routes.rb
resources :missions do
resources :tasks
end
任务.rb
class Mission < ActiveRecord::Base
extend FriendlyId
friendly_id :name, use: :slugged
has_many :tasks
end
任务.rb
class Task < ActiveRecord::Base
extend FriendlyId
friendly_id :name, use: :slugged
belongs_to :mission
end
【问题讨论】:
标签: ruby-on-rails activerecord friendly-id