【问题标题】:Laravel Auditing BadMethodCallException Method audits does not existLaravel 审计 BadMethodCallException 方法审计不存在
【发布时间】:2018-11-22 19:57:43
【问题描述】:

我正在使用 laravel 审计,Link 我已经将它与我的控制器一起使用并且工作正常,现在我的问题是当我将它应用到另一个控制器时确实有效,它只允许使用一次吗?我的方法都一样,我只是很困惑为什么它不起作用。

第一个控制器代码(工作正常)

 $leads = Lead::findOrFail($id);
 $audit=Lead::findOrFail($id)->audits()->with('user')->get()->last();

第二控制器代码:(不工作错误:方法审核不存在。)

  $scores = Score::with(['lead','subject'])->where(['subject_id'=>$id])->get();
  $audit = $scores->audits()->with('user')->get()->last();

【问题讨论】:

  • 你确定你在 Score 模型上使用了“implements Auditable”吗?希望这会有所帮助。
  • 是的,我已经在我的模型中实现了它,
  • 检查这个laravel-auditing.com/docs/8.0/getting-audits,我没有看到他们对多条记录使用审计方法。希望这会有所帮助。
  • 我正在对 SCORE 表执行审计,仅与 Lead 表相同,没有区别.. 我不明白为什么它会复杂
  • get 方法获取多行

标签: laravel audit laravel-auditing


【解决方案1】:

不知道 Laravel 审计是什么,但我的猜测是,你的第一个是一个对象,所以你可以直接在它上面应用你的 audit() 方法,但是第二个 $scores 是一个集合对象,你肯定不能直接对其应用方法调用,尝试迭代它,应该没问题。

【讨论】:

    猜你喜欢
    • 2018-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-14
    • 2020-01-05
    • 2011-06-13
    • 1970-01-01
    相关资源
    最近更新 更多