static function initialize_association_options($class_name, $plural_name, &$options)
 {
     parent::initialize_association_options($class_name, $plural_name, $options);
     if (!isset($options['join_table'])) {
         $tableized_class = Inflector::tableize($class_name);
         $tableized_foreign_class = Inflector::tableize($options['class_name']);
         $options['join_table'] = $tableized_class < $tableized_foreign_class ? $tableized_class . '_' . $tableized_foreign_class : $tableized_foreign_class . '_' . $tableized_class;
     }
     if (!isset($options['association_foreign_key'])) {
         $options['association_foreign_key'] = Inflector::uncamelize($options['class_name']) . '_id';
     }
 }
Ejemplo n.º 2
0
 static function initialize_association_options($class_name, $plural_name, &$options)
 {
     /*
      * Handle polymorphic associations
      */
     if (isset($options['as'])) {
         if (!isset($options['foreign_key'])) {
             $options['foreign_key'] = $options['as'] . '_id';
         }
         if (!isset($options['foreign_type'])) {
             $options['foreign_type'] = $options['as'] . '_type';
         }
     }
     parent::initialize_association_options($class_name, $plural_name, $options);
 }