0

假设,我有这些热情的模型

class User extends \LaravelBook\Ardent\Ardent
{
     public $autoHydrateEntityFromInput = true;
     protected $fillable = array('username', 'password', 'address');
     protected $table = 'Users';
     public static $relationsData = array(
     'location'  => array(self::HAS_ONE, 'Location');
}

class Location extends \LaravelBook\Ardent\Ardent
{
     protected $fillable = array('address');
     protected $table = 'Locations';         
}

现在,当我编写这样的控制器代码时,

 $user = new User;
 $user->address = Input::get('address');
 $user->push();

它不会将地址数据保存到地址表

4

1 回答 1

0

你不展示Party模型?

此外,Input::get('address')什么也不做,它只是从输入中返回地址。

我在这里假设,但我想你会想要这样的东西:

$user = new User;
$user->locations()->create(Input::only('address'));

这将为用户创建一个新位置,并从输入中传入地址。


如果您尝试使用 Ardent 的自动补水功能,这可能会奏效:

// Autohydrate the location model with input.
$location = new Location;

// Associate the new model with your user.
$user->locations()->save($location);
于 2014-08-25T06:10:37.963 回答