2013-08-02 3 views
6

В моих моделях я использую Ardent для самостоятельной проверки, но у меня есть модель, где мне также нужно использовать Sentry для аутентификации. Поэтому мне также нужно расширить Ardent и Sentry, но я не могу, потому что на PHP нет множественного наследования. Я пытался сделать это с чертами, но черты не могут распространяться. Мне вряд ли нужны оба класса, есть ли способ использовать их оба?Как использовать Sentry с пылом в Laravel?

+0

Удалось ли вам использовать Sentry & Ardent? –

+0

@ JavierEnríquez No. В конце мы использовали только Sentry и сделали валидацию обычным способом. Одним из возможных способов решения проблемы является поиск папки поставщика Sentry и ее продление на Ardent. – totymedli

ответ

1

Я думаю, что лучший способ сделать это - скопировать всю модель пользователя непосредственно из папки Sentry: , например. src/Cartalyst/Sentry/Users/Eloquent/User.php

Скопируйте этот файл в каталог моделей, а затем добавьте его вместо Ardent вместо Model, так как Ardent уже расширяет модель.

Это должно сработать - хотя могут возникнуть некоторые осложнения или исправления, необходимые для его работы, я делаю что-то подобное, используя Toddish/Verify вместо Sentry.

+0

он выдает ошибку 'Объявление Cartalyst \ Sentry \ Users \ Eloquent \ User :: validate() должно быть совместимо с LaravelBook \ Ardent \ Ardent :: validate (array $ rules = Array, array $ customMessages = Array)' – Muflix