Forum: Ruby on Rails Table associated problem using belongs_to

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
F232cf4e858769b20ea6e9ee5adf12b2?d=identicon&s=25 Ray Sun (xiaoquqi)
on 2009-01-04 09:20
I have two tables:
Table [packages]
id  name  user_name
-------------------
1   PK1   Ray
-------------------

Table [users]
id  name  full_name
-------------------
2   Ray   Ray Sun
-------------------

My purpose is to find the full name when I find packages. So I modify
Model Package to:

class Package < ActiveRecord::Base
  belongs_to :user,
             :class_name => "User",
             :foreign_key => "user_name"
end

Then I run Package.find(1, :include => :user) in Rails console. From the
log, I can see the sql is:
  Package Load Including Associations (0.000309)   SELECT
`packages`.`id` AS t0_r0, `packages`.`name` AS t0_r1,
`packages`.`user_name` AS t0_r2, `users`.`id` AS t1_r0, `users`.`name`
AS t1_r1, `users`.`full_name` AS t1_r2 FROM `packages` LEFT OUTER JOIN
`users` ON `users`.id = `packages`.user_name WHERE (`packages`.`id` = 1)

But I cannot find the parameters for belongs_to to set
associated_foreign_key like has_and_belongs_to_many. I don't know how to
deal with it. Please help. Thanks.
81b61875e41eaa58887543635d556fca?d=identicon&s=25 Frederick Cheung (Guest)
on 2009-01-04 14:35
(Received via mailing list)
On 4 Jan 2009, at 08:20, Ray Sun wrote:
>
> But I cannot find the parameters for belongs_to to set
> associated_foreign_key like has_and_belongs_to_many. I don't know
> how to
> deal with it. Please help. Thanks.

There is no such option for belongs_to. In the rails world your
packages table would have a user_id column.

Fred
F232cf4e858769b20ea6e9ee5adf12b2?d=identicon&s=25 Ray Sun (xiaoquqi)
on 2009-01-04 14:39
Frederick Cheung wrote:
> On 4 Jan 2009, at 08:20, Ray Sun wrote:
>>
>> But I cannot find the parameters for belongs_to to set
>> associated_foreign_key like has_and_belongs_to_many. I don't know
>> how to
>> deal with it. Please help. Thanks.
>
> There is no such option for belongs_to. In the rails world your
> packages table would have a user_id column.
>
> Fred

Is there any way as workaround to satisfy my requirement? Thanks.
81b61875e41eaa58887543635d556fca?d=identicon&s=25 Frederick Cheung (Guest)
on 2009-01-04 17:33
(Received via mailing list)
On 4 Jan 2009, at 13:39, Ray Sun wrote:

>> packages table would have a user_id column.
>>
>> Fred
>
> Is there any way as workaround to satisfy my requirement? Thanks.

Nothing obvious springs to mind.

Fred
This topic is locked and can not be replied to.