Changeset 313 for trunk/trax/vendor/trax/active_record.php
- Timestamp:
- 07/07/09 21:57:06 (3 years ago)
- Files:
-
- 1 modified
-
trunk/trax/vendor/trax/active_record.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/trax/vendor/trax/active_record.php
r311 r313 667 667 switch($association_type) { 668 668 case "has_many": 669 $parameters = is_array($this->has_many) && @array_key_exists($method_name, $this->has_many) ?669 $parameters = is_array($this->has_many) && @array_key_exists($method_name, $this->has_many) && !is_null($this->has_many[$method_name]) ? 670 670 array_merge($this->has_many[$method_name], $parameters) : $parameters; 671 671 $result = $this->find_all_has_many($method_name, $parameters); 672 672 break; 673 673 case "has_one": 674 $parameters = is_array($this->has_one) && @array_key_exists($method_name, $this->has_one) ?674 $parameters = is_array($this->has_one) && @array_key_exists($method_name, $this->has_one) && !is_null($this->has_one[$method_name]) ? 675 675 array_merge($this->has_one[$method_name], $parameters) : $parameters; 676 676 $result = $this->find_one_has_one($method_name, $parameters); 677 677 break; 678 678 case "belongs_to": 679 $parameters = is_array($this->belongs_to) && @array_key_exists($method_name, $this->belongs_to) ?679 $parameters = is_array($this->belongs_to) && @array_key_exists($method_name, $this->belongs_to) && !is_null($this->belongs_to[$method_name]) ? 680 680 array_merge($this->belongs_to[$method_name], $parameters) : $parameters; 681 681 $result = $this->find_one_belongs_to($method_name, $parameters); 682 682 break; 683 683 case "has_and_belongs_to_many": 684 $parameters = is_array($this->has_and_belongs_to_many) && @array_key_exists($method_name, $this->has_and_belongs_to_many) ?684 $parameters = is_array($this->has_and_belongs_to_many) && @array_key_exists($method_name, $this->has_and_belongs_to_many) && !is_null($this->has_and_belongs_to_many[$method_name]) ? 685 685 array_merge($this->has_and_belongs_to_many[$method_name], $parameters) : $parameters; 686 686 $result = $this->find_all_habtm($method_name, $parameters); … … 760 760 $options['per_page'] = $parameters['per_page']; 761 761 } 762 if(@array_key_exists("group", $parameters)) { 763 $options['group'] = $parameters['group']; 764 } 765 if(@array_key_exists("having", $parameters)) { 766 $options['having'] = $parameters['having']; 767 } 762 768 if(@array_key_exists("class_name", $parameters)) { 763 769 $other_object_name = $parameters['class_name']; … … 2248 2254 unset($attributes); 2249 2255 $attributes[$this_foreign_key] = $this_foreign_value; 2250 $attributes[$other_foreign_key] = $other_foreign_value; 2256 $attributes[$other_foreign_key] = $other_foreign_value; 2257 #error_log("HABTM - this_foreign_value:$this_foreign_value other_foreign_value:$other_foreign_value"); 2258 if(in_array('', array($this_foreign_value, $other_foreign_value))) { 2259 # this will cause an error so don't insert 2260 continue; 2261 } 2251 2262 if($sort_field) { 2252 2263 $attributes[$sort_field] = $sort_value;
