2016-05-13 1 views
1

Я создаю свое первое приложение с Laravel 5.2 & Laravel Spark. Передняя часть построена с использованием Vue.js я считаю, и, несмотря на добавление следующего register-common-form.blade.php:Laravel Spark - добавление дополнительных полей в регистрационную форму, но при пустых ошибках не возвращается

<!-- Username --> 
<div class="form-group" :class="{'has-error': registerForm.errors.has('username')}"> 
    <label class="col-md-4 control-label">Username</label> 

    <div class="col-md-6"> 
     <input type="name" class="form-control" name="username" v-model="registerForm.username" autofocus> 

    <span class="help-block" v-show="registerForm.errors.has('username')"> 
     @{{ registerForm.errors.get('username') }} 
    </span> 
    </div> 
</div> 

Я не могу фактически видеть способ полностью зарегистрировать, что дополнительное поле так, что он подобран для обработки ошибок. У меня есть так, что UserRepository обрабатывает поле и вставляет его, но просто не может получить ошибки переднего конца, чтобы показать их правильно.

Может ли кто-нибудь помочь в этом?

ответ

0

Хорошо, я, наконец, наткнулся на него: D

В Laravel\Spark\Interactions\Auth\CreateUser.php есть $rules метод следующим образом:

public function rules($request) 
    { 
     return [ 
      'name' => 'required|max:255', 
      'email' => 'required|email|max:255|unique:users', 
      'password' => 'required|confirmed|min:6', 
      'vat_id' => 'max:50|vat_id', 
      'terms' => 'required|accepted', 
     ]; 
    } 

Все, что я сделал, это добавить мое имя пользователя поля, и это работает прекрасно!

public function rules($request) 
    { 
     return [ 
      'name' => 'required|max:255', 
      'username' => 'required|unique:users', 
      'email' => 'required|email|max:255|unique:users', 
      'password' => 'required|confirmed|min:6', 
      'vat_id' => 'max:50|vat_id', 
      'terms' => 'required|accepted', 
     ]; 
    } 
+0

, когда мы делаем 'искровой: update', что файл будет заменил ... я прав? –

+0

@ ZaffarSaffee Да, к сожалению, это связано с экспериментированием из-за отсутствия документации в начале. Тейлор теперь добавил это как учебник поваренной книги по документации Spark с надлежащей реализацией. –

0

Над ответа только для правил проверки вы также должны перейти к spark\src\Repositories\UserRepository.php и добавить 'username' => $data['username'], к create() методе, как это:

public function create(array $data) 
{ 
    $user = Spark::user(); 

    $user->forceFill([ 
     'name' => $data['name'], 
     'username' => $data['username'], // ADDED THIS 
     'email' => $data['email'], 
     'password' => bcrypt($data['password']), 
     'confirmation_code' => str_random(30), 
     'last_read_announcements_at' => Carbon::now(), 
     'trial_ends_at' => Carbon::now()->addDays(Spark::trialDays()), 
    ])->save(); 

    return $user; 
} 
+0

Не повлияет ли это на обновление Spark? Очень отличается от того, что Тейлор поставил здесь из того, что я вижу - https://spark.laravel.com/docs/4.0/adding-registration-fields –

+0

Я не вижу различий в ссылке или документах: «Далее, нам нужно настроить новые методы проверки и хранения данных Spark для обработки нашего нового возрастного поля ». –

+0

Так это метод 'booted' в SparkServiceProvider? Я только спрашиваю, потому что вы упоминаете 'spark \ src' в своем ответе, который кажется, что он будет перезаписан обновлением –

Смежные вопросы