그냥 사는 이야기

Laravel 5.3 Tutorial for Beginner - Mini Social Network 본문

Development/Web

Laravel 5.3 Tutorial for Beginner - Mini Social Network

없다캐라 2020. 1. 19. 04:14
반응형

Social Network Custom Registration

우선 라라벨 프로젝트를 생성

Migrate

php artisan migrate

Auth

php artisan make:auth

유저 항목 customizing

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('username', 32); // 추가
        $table->date('dob');            // 추가
        $table->string('name');
        $table->string('email')->unique();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}

위의 두 항목 추가


Social Network Change Custom Authentication

이전 단계에서 db users 테이블에서 2개항목을 추가하였기에 관련 내용을 적용한다. nullable()이나 default()로 줘도 되지만 유저 입력창을 생성한다.

User Input 추가

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

    <div class="col-md-6">
        <input id="username" type="text" class="form-control" name="username" value="{{ old('username') }}" required autofocus>

        @if ($errors->has('username'))
            <span class="help-block">
                <strong>{{ $errors->first('username') }}</strong>
            </span>
        @endif
    </div>
</div>

<div class="form-group{{ $errors->has('dob') ? ' has-error' : '' }}">
    <label for="dob" class="col-md-4 control-label">dob</label>

    <div class="col-md-6">
        <input id="dob" type="date" class="form-control" name="dob" value="{{ old('dob') }}" required autofocus>

        @if ($errors->has('dob'))
            <span class="help-block">
                <strong>{{ $errors->first('dob') }}</strong>
            </span>
        @endif
    </div>
</div>

Controller에 항목 추가

protected function create(array $data)
{
    return User::create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
        'username' => $data['username'],        // 추가
        'dob' => $data['dob'],                  // 추가
    ]);
}

Model fillalbe 추가

protected $fillable = [
    'name', 'email', 'password', 'username', 'dob',
];

username과 dob 추가

Comments