Laravel/Nova
-
Relation filter 관계형 데이터 where로 필터링하고 싶을 때 #Filter #Relation #BelongsTo #whereLaravel/Nova 2022. 12. 18. 19:07
# What? 특정 리소스에서 다른 관계 데이터 가져올 때 where로 필터링하고 싶을 때 # How? - 예시상황 : Dating이라는 리소스에서 User리소스를 호출할 때 men이라는 관계명으로 가져옴. 이 때 성별이 남자인 user들만 목록에 노출되야하는 상황 @Nova\Dating.php return [ ... BelongsTo::make(__("Men"), "men", User::class), .... @Nova\User.php public static function relatableQuery(NovaRequest $request, $query) { $requestSegment = strtolower($request->segment(4)); if ($requestSegment === 'men'..
-
사이드바 메뉴 순서 변경Laravel/Nova 2022. 9. 15. 11:28
# What? nova 왼쪽 사이드 메뉴 순서변경하는 방법 # How? @ Providers/NovaServiceProvider.php ... public function register() { Nova::sortResourcesBy(function ($resource) { return $resource::$priority ?? 99999; }); } @ Nova/Product.php class Product extends Resource { ... public static $group = "1. 메인페이지 관리"; public static $priority = 2;
-
Order 패키지 사용법(Orderable)Laravel/Nova 2022. 7. 2. 21:56
# What? 순서변경 패키지인데 indexQuery랑 같이 사용할 시 오류가 있어서 특정 처리를 필요함 # How? composer require michielkempen/nova-order-field @ App\Models\Model.php use Spatie\EloquentSortable\Sortable; use Spatie\EloquentSortable\SortableTrait; class MyModel extends Model implements Sortable { use SortableTrait; public $sortable = [ 'order_column_name' => '컬럼명', 'sort_when_creating' => true, ]; // ... } @ App\Nova\Model.p..
-
Action에 모델 resource id(parameter, 변수) 전달하고싶을 때Laravel/Nova 2022. 5. 19. 20:24
# What? 커스텀 액션에 모델 id 직접 전달하고싶을 때 사용 # How? * $request->resources 전달해주기(목록에서 선택한 resource id들) @ Nova/CouponGenerator.php (ExportCoupons::make($request->resources))->canSee(function (){ return true; })->canRun(function(){ return true; }) @ Actions/ExportCoupons.php
-
Lense에서 view(자세히 보기) 가리기Laravel/Nova 2022. 4. 16. 08:20
# What? - 렌즈에서 자세히보기 하면 에러 떠서 삭제 필요 # How? - 해당 렌즈의 기반이 되는 Nova Resource에 serializeForIndex에서 해당 렌즈의 uri-key값일 경우 권한 설정하기 @ Nova/Letter.php public function serializeForIndex(NovaRequest $request, $fields = null) { // Get proper response $serialized = parent::serializeForIndex($request, $fields); if ($request->lens && $request->lens == 'agent-letters') { $serialized = array_merge($serialized, [ '..