LaravelRUS / SleepingOwlAdmin

🦉 Administrative interface builder for Laravel (Laravel admin)
http://sleepingowladmin.ru/
MIT License
799 stars 216 forks source link

Как отобразить свой blade с jQuery логикой? #731

Closed UksusoFF closed 7 years ago

UksusoFF commented 7 years ago

Раньше jQuery скрипты просто лежали внутри custom_view и она отдавалась как написано в доке AdminSection::view(view('admin.custom_view')).

Теперь если я правильно понимаю ее нужно вытащить в @stack('footer-scripts'). Но как?

Я попробовал из контроллера возвращать view('block.custom_view') который @extends('sleeping_owl::default._layout.base') Но такой вариант ругается что нет $template.

UksusoFF commented 7 years ago

Как подключать кастомный js я нашел в https://github.com/LaravelRUS/SleepingOwlAdmin/issues/243

Но вопрос можно ли экстендить base blade остался.

ghost commented 7 years ago

Можно - нужно положить в resources/views/vendor/sleepingowl/default и там как по структуре в вендоре. И у тебя переопределиться baseblade с твоего ресурса. @UksusoFF

UksusoFF commented 7 years ago

@aios я немного не про то.

Но вообщем получил что хотел так:

<?php

namespace App\Admin\Http\Controllers;

use SleepingOwl\Admin\Http\Controllers\AdminController as Controller;

class AdminController extends Controller
{
    public function test()
    {
        return $this->admin->template()->view('test', [
            'title' => '',
            'content' => '',
            'breadcrumbKey' => '',
        ]);
    }
}

и шаблон положить в resources/views/vendor/sleeping_owl/default/test.blade.php:

@extends(AdminTemplate::getViewPath('_layout.inner'))

@push('content.top')
    ///
@endpush

@push('footer-scripts')
<script>
    ///
</script>
@endpush
UksusoFF commented 7 years ago

Было бы неплохо кстати если можно было бы не передавать в inner title и content:

{!! $content or '' !!}