Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
511 views
in Technique[技术] by (71.8m points)

has many - Rails has_many with alias name

In my User model I could have:

has_many :tasks

and in my Task model:

belongs_to :user

Then, supposing the foreign key 'user_id' was stored in the tasks table, I could use:

@user.tasks

My question is, how do I declare the has_many relationship such that I can refer to a User's Tasks as:

@user.jobs

... or ...

@user.foobars

Thanks a heap.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Give this a shot:

has_many :jobs, foreign_key: "user_id", class_name: "Task"

Note, that :as is used for polymorphic associations.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...