1
我有3個車型,如這個 -如何定義這三種模型之間的關係?
| User | Skill | SubSkills |
|:-----------|------------:|:------------:|
| Name |Title | Title |
| Trade |Trade | Done(bool)|
模型應該注意哪些喜歡 -
class User < ActiveRecord::Base
has_and_belongs_to_many :skills
end
class Skill < ActiveRecord::Base
has_and_belongs_to_many :users
has_many :sub_skills
end
class SubSkills < ActiveRecord::Base
belongs_to :user #not sure
belongs_to :skill
end
基本上技能都一樣爲同行業的每一位用戶和一個用戶有很多技巧。每項技能都有許多單項技能,但是針對特定用戶完成(或不完成)單項技能。
這可能嗎?什麼是設計這種關係的更好方法?這條路線將如何定義?像哪些資源將嵌套在哪個資源下?
我需要把'User belongs_to:sub_skill'?我是否需要在subskills表中放置一個用於user_id的外鍵? – krishna
不,沒有。除非你想能夠做'user.sub_skills'。 –
如果我在用戶中嵌套技能,那麼當我創建一個新技能時,我會有'new_skill_path(@user)'這樣的東西,所以不會爲那個特定用戶創建那個技能嗎?而我希望該技能屬於同一交易的每個用戶。但是,如果我在用戶之外嵌套技能,那麼對於某個特定用戶來說,如何標記一個子技能?(因爲子技巧嵌套在技能內) – krishna