ActiveRecord\HasMany::build_association PHP Method

build_association() public method

public build_association ( activerecord\Model $model, $attributes = [], $guard_attributes = true )
$model activerecord\Model
    public function build_association(Model $model, $attributes = array(), $guard_attributes = true)
    {
        $relationship_attributes = $this->get_foreign_key_for_new_association($model);
        if ($guard_attributes) {
            // First build the record with just our relationship attributes (unguarded)
            $record = parent::build_association($model, $relationship_attributes, false);
            // Then, set our normal attributes (using guarding)
            $record->set_attributes($attributes);
        } else {
            // Merge our attributes
            $attributes = array_merge($relationship_attributes, $attributes);
            // First build the record with just our relationship attributes (unguarded)
            $record = parent::build_association($model, $attributes, $guard_attributes);
        }
        return $record;
    }