BelongsTo::make('User')
글을 작성할때 유저선택 창이 보일 것이다.
이것을 현재 로그인한 유저로 자동입력하게 하는 방법이다.
1. 첫번째로 관계를 맺어준다. User.php
1 2 3 4 5 | public function posts() { //나는 여러개의 post를 가지고 있습니다. 여기서 나는 user이다. $this->hasMany(Post::class); } | cs |
2. Post.php
1 2 3 4 5 | public function user() { // 나는 유저에게 속한다. return $this->belongsTo(User::class); } | cs |
3. Post.php 파일에 추가 소스 삽입
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <?php namespace App; use Illuminate\Database\Eloquent\Model; class Post extends Model { public function user() { // 나는 유저에게 속한다. return $this->belongsTo(User::class); } //자동 유저 아이디 삽입 public static function boot() { parent::boot(); static::creating(function ($post) { $post->user_id = auth()->user()->id; }); } } | cs |
4. Nova/Post.php
임포트 use Laravel\Nova\Fields\BelongsTo;
1 | BelongsTo::make('User')->hideWhenCreating()->hideWhenUpdating(), | cs |
원하는 컬럼명정의
1 | BelongsTo::make('작성자','User',\App\Nova\User::class)->hideWhenCreating()->hideWhenUpdating(), | cs |
5. posts테이블에 user_id 컬럼을 추가한다.
글 작성유저id가 삽입이 된다.
글 작성시 유저 명이 보이지 않는다.
디테일보기 하며 글작성 유저명이 보인다.
'라라벨 > NOVA' 카테고리의 다른 글
nova belongsto select fields other table name setting(관계 설정시 컬럼값 변경) (0) | 2020.01.12 |
---|---|
nova 좌측메뉴 순서바꾸기 (0) | 2020.01.11 |
(package) user permission tool(ACL) (0) | 2020.01.07 |
(package) nova Actions excel export(엑셀 추출) (0) | 2020.01.07 |
라라벨 설치부터 노바 미디어라이브러리 설치 (0) | 2020.01.06 |