Я пытаюсь иметь эти правила в моей моделиКак передать значение внутри модели для проверки в правилах
'Email' => 'email|unique:tablename,coloumntoignore,ignoreid',
Приведенные выше правила, чтобы проверить уникальный coloumn, кроме идентификатора, поставляемые в ignoreid
сталкивается две проблем здесь
Я получаю ввод данных пользователя
$DriverData = Input::except(array('_token'));
и отправить его в модель
$validation = Validator::make($DriverData, DriverModel::$updaterules);
Примечание: Это обновление не самость, так что я не могу получить его Auth::user()->id
и мой первичный ключ не id
проверить его
'Email' => 'email|unique:driver_details,email,4',
Он сказал мне ошибки
Column not found: 1054 Unknown column 'id' in 'where clause' (SQL: select count(*) as aggregate from `driver_details` where `email` = [email protected] and `id` <> 4)
т поджилки я упомянул protected $primaryKey = 'DriverId';
Итак, как я могу иметь получить значение поля внутри модели, так что я должен проверить для правила, чтобы проверить уникальное coloumn за исключением одной его
Примечания: Грязные так как включение DriverId в сеанс на контроллере и получение здесь вроде этого не является предпочтительным.
Спасибо я преодолеть '«Email»=>«по электронной почте | уникальные : driver_details, email, 4, DriverId ', 'Но даже я использую getUpdateRule, в то время как я использую' $ validation = Validator :: make ($ DriverData, DriverModel :: getUpdateRules ($ id)); 'в контроллере я получаю 'Undefined variable: getUpdateRules' error –
Возможно, у вас есть опечатка. Убедитесь, что вы используете 'DriverModel :: getUpdateRules ($ id)', а не 'DriverModel :: $ getUpdateRules ($ id)'. Перед функцией не должно быть '$'. – patricus