【问题标题】:How to use Sentry with Ardent in Laravel?如何在 Laravel 中使用 Sentry 和 Ardent?
【发布时间】:2013-08-03 10:39:43
【问题描述】:

在我的模型中,我使用Ardent 进行自我验证,但我有一个模型,我还需要使用Sentry 进行身份验证。所以我也需要扩展 Ardent 和 Sentry,但我不能,因为 PHP 中没有多重继承。我试图用特征来做到这一点,但特征不能扩展。我几乎不需要这两个类,有什么方法可以同时使用它们吗?

【问题讨论】:

  • Sentry 和 Ardent 都使用了吗?
  • @JavierEnríquez 没有。最后我们只使用了 Sentry 并以常规方式进行了验证。一种可能的解决方法是找到 Sentry 的供应商文件夹并使其扩展 Ardent。

标签: php laravel ardent


【解决方案1】:

我认为最好的方法是直接从 Sentry 文件夹中复制整个 User 模型: 例如src/Cartalyst/Sentry/Users/Eloquent/User.php

将该文件复制到您的模型目录,然后让它扩展 Ardent 而不是 Model,因为 Ardent 已经扩展了 Model。

这应该可以工作 - 尽管可能需要一些复杂性或修复才能使其工作,但我正在使用 Toddish/Verify 而不是 Sentry 做类似的事情。

【讨论】:

  • 它抛出错误Declaration of Cartalyst\Sentry\Users\Eloquent\User::validate() should be compatible with LaravelBook\Ardent\Ardent::validate(array $rules = Array, array $customMessages = Array)
猜你喜欢
  • 1970-01-01
  • 2014-01-26
  • 2021-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-07
  • 2014-08-30
相关资源
最近更新 更多