我不知道这个模型有什么问题,似乎我使用了相同的方法来更新'updated_by‘字段。这是我的模型地址代码。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Auth;
class Address extends Model
{
//declare table since we not generate it using migrate laravel
protected $table = 'ADDRESS';
//assign all field as fillable
protected $guarded = [];
// Update field update_by for Address .
public static function boot()
{
//this function not work when updating
static::updating(function ($Address) {
$Address->created_by = Auth::user()->id;
});
//this function work perfectly
static::creating(function ($Address) {
$Address->updated_by = Auth::user()->id;
$Address->created_by = Auth::user()->id;
});
}
function getMember()
{
return $this->belongsTo('App\Mbrdata','mbr_id');
}
}这个代码在其他模型上工作得很好,不知何故,对于这个模型,它什么也做不了。我会尝试跟踪一个错误,不知何故我不知道如何调试错误,因为我没有看到任何错误/exception消息。有什么建议如何调试这类问题吗?因为我检查了我的日志,所以也没有记录任何错误。
更正:-
public static function boot()
{
//this function not work when updating
static::updating(function ($Address) {
$Address->updated_by = Auth::user()->id;
});
//this function work perfectly
static::creating(function ($Address) {
$Address->updated_by = Auth::user()->id;
$Address->created_by = Auth::user()->id;
});
}但是校正后仍然是一样的,字段仍然没有随着当前用户更新。
发布于 2018-09-13 21:35:44
您在更新方法中使用的是created_by字段,应该是updated_by。
你可以试试这个,也许这会对你有帮助
public static function boot()
{
//this function not work when updating
static::updated(function ($Address) {
$Address->updated_by = Auth::user()->id;
});
//this function work perfectly
static::creating(function ($Address) {
$Address->updated_by = Auth::user()->id;
$Address->created_by = Auth::user()->id;
});
}然后尝试上面,让我知道这是否有帮助。
https://stackoverflow.com/questions/52314324
复制相似问题