Foreign keys

I am not sure how foreign keys work here, i used belongs_to and
has_many and created an extra attribute for the foreign key my
question is how can i say this is the foreign key

Thanks in advance

If the schema follows AR naming conventions the FK is inferred.

For example, if post has many comments

    has_many :comments, :dependent => :destroy

and a comment belongs to a post

    belongs_to :post

and the FK in the comments table is called post_id, you're done. AR
will figure it out.

If the column is called something else there's an option to specify
which is the FK, but if you're defining a new schema it is better (and
expected) to just follow the conventions.

Assuming that you follow the Rails conventions then you do not need
to, so if you have Foo belongs to bar and Bar has many foos, then
Rails will expect the foos table to have a column bar_id as the
foreign key.

However you may like to look at the foreigner gem which allows foreign
key constraints to be applied to the database to prevent invalid
foreign keys being saved. If you are just starting then it is not
necessary to do this for the moment. I recommend it for production

I suggest running through some guides and tutorials which will help
you to understand how all this works. is a good
free online tutorial and you should look at the Rails Guides also.