SQL Dump是:
CREATE TABLE `visitors` (
`idVisitor` int(11) NOT NULL,
`name` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `visitors`
ADD PRIMARY KEY (`idVisitor`);
ALTER TABLE `visitors`
MODIFY `idVisitor` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
COMMIT;
完整模型是:
class Visitor extends Model
{
public $timestamps = false;
public $table = 'visitors';
protected $fillable = ['name'];
protected $primaryKey = 'idVisitor';
protected static function boot()
{
parent::boot();
static::addGlobalScope(new StatusScope);
}
public function checker()
{
return $this->hasOne('App\User', 'id', 'user_checked');
}
public function event()
{
return $this->belongsTo('App\Event', 'idEvent', 'idEvent');
}
}
插入的是:
$c = Visitor::create(["name" => "4"]);
echo json_encode($c);die();
它返回:{"name":"4","idVisitor":8}
,但是在表中没有插入行。我不使用交易。
答案 0 :(得分:0)
查看模型后,我认为您需要设置$ fillable var。您可以将所有要插入/更新的汽车中的属性放在其中。
https://laravel.com/docs/5.8/eloquent参见“批量分配”部分。