You can clone with
Cannot retrieve contributors at this time
--- has_and_belongs_to_many: "* :class_name - specify the class name of the association. Use it only if that name can\xE2\x80\x99t be inferred from the association name. So has_and_belongs_to_many :projects will by default be linked to the Project class, but if the real class name is SuperProject, you\xE2\x80\x99ll have to specify it with this option.\r\n * :join_table - specify the name of the join table if the default based on lexical order isn\xE2\x80\x99t what you want. WARNING: If you\xE2\x80\x99re overwriting the table name of either class, the table_name method MUST be declared underneath any has_and_belongs_to_many declaration in order to work.\r\n * :foreign_key - specify the foreign key used for the association. By default this is guessed to be the name of this class in lower-case and \"_id\" suffixed. So a Person class that makes a has_and_belongs_to_many association will use \"person_id\" as the default foreign_key.\r\n * :association_foreign_key - specify the association foreign key used for the association. By default this is guessed to be the name of the associated class in lower-case and \"_id\" suffixed. So if the associated class is Project, the has_and_belongs_to_many association will use \"project_id\" as the default association foreign_key.\r\n * :conditions - specify the conditions that the associated object must meet in order to be included as a \"WHERE\" sql fragment, such as \"authorized = 1\".\r\n * :order - specify the order in which the associated objects are returned as a \"ORDER BY\" sql fragment, such as \"last_name, first_name DESC\"\r\n * :uniq - if set to true, duplicate associated objects will be ignored by accessors and query methods\r\n * :finder_sql - overwrite the default generated SQL used to fetch the association with a manual one\r\n * :delete_sql - overwrite the default generated SQL used to remove links between the associated classes with a manual one\r\n * :insert_sql - overwrite the default generated SQL used to add links between the associated classes with a manual one\r\n * :extend - anonymous module for extending the proxy, see \"Association extensions\".\r\n * :include - specify second-order associations that should be eager loaded when the collection is loaded.\r\n * :group: An attribute name by which the result should be grouped. Uses the GROUP BY SQL-clause.\r\n * :limit: An integer determining the limit on the number of rows that should be returned.\r\n * :offset: An integer determining the offset from where the rows should be fetched. So at 5, it would skip the first 4 rows.\r\n * :select: By default, this is * as in SELECT * FROM, but can be changed if you for example want to do a join, but not include the joined columns."