Подтвердить что ты не робот

Разработка пакета Laravel 5

У меня возникли проблемы с созданием пакета в Laravel 5, поскольку workbench был удален.

Как и в этой теме (Как создать пакет в Laravel 5?), Goldorak предлагает нам самим создать собственную структуру пакетов.

Итак, как я могу создать рабочую среду вручную и подготовить все для разработки пакета?

4b9b3361

Ответ 1

Использование пакета larvel Workbench:

Вы можете добавить пакет illuminate/workbench в Laravel 5, добавив к вашему composer.json:

"illuminate/workbench": "dev-master"

затем добавьте WorkbenchServiceProvider в ваш файл config/app.php:

'Illuminate\Workbench\WorkbenchServiceProvider'

Теперь вам нужно создать файл config/workbench.php, так как он был удален из Laravel 5:

<?php

return [
    /*
    |--------------------------------------------------------------------------
    | Workbench Author Name
    |--------------------------------------------------------------------------
    |
    | When you create new packages via the Artisan "workbench" command your
    | name is needed to generate the composer.json file for your package.
    | You may specify it now so it is used for all of your workbenches.
    |
    */
    'name' => '',
    /*
    |--------------------------------------------------------------------------
    | Workbench Author E-Mail Address
    |--------------------------------------------------------------------------
    |
    | Like the option above, your e-mail address is used when generating new
    | workbench packages. The e-mail is placed in your composer.json file
    | automatically after the package is created by the workbench tool.
    |
    */
    'email' => '',
];

Заполните свою информацию в этом файле конфигурации, и вы сможете использовать команду workbench:

php artisan workbench vendor/name

Создание собственной структуры пакета

В этом примере мы создадим наш пакет под названием awesome в каталоге пакетов.

Вот структура пакета:

packages/
  vendor/
    awesome/
      src/
        Awesome.php
      composer.json
  • Поставщик: ваше имя поставщика, обычно это ваше имя пользователя github.
  • Awesome: имя вашего пакета
  • src: где вы помещаете бизнес-логику

Чтобы сгенерировать файл composer.json, вы можете использовать эту команду в каталоге packages/vendor/awesome:

composer init

Теперь мы создаем класс Awesome.php в каталоге src с помощью простого метода:

<?php namespace Vendor/Awesome;

class Awesome
{
    public static function printAwesomeness()
    {
        echo 'Awesome';
    }
}

После этого мы добавляем пакет в автозагрузчик laravel composer.json psr-4:

"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Vendor\\Awesome\\": "packages/vendor/awesome/src"
    }
},

и мы выгружаем автозагрузчик композитора

composer dump-autoload

Теперь вы можете использовать свой пакет повсюду в своем проекте laravel 5. Если вам нужна определенная функция laravel, такая как поставщик услуг или публикация публикации, используйте их, как описано в документации Laravel 5.0.

Ответ 2

laravel 5 Стандарты без рабочего инструмента.

Установить 1: установить laravel, как обычно.

Шаг 2. Создание папки и поставщика пакетов

В корневом каталоге создайте папку "пакеты" /"vendorName"/"packageName"/src" Eg: root/packages/jai/Contact/src

теперь перейдите в папку src и создайте класс поставщика услуг: "ContactServiceprovider.php"

поставщик услуг должен расширить ServiceProvider, который должен реализовать метод register.

Примечание. Если вы хотите, у вас может быть dd ( "тестирование" ); в функции загрузки и перейдите к шагу 3, но вы скопировали файл, который может потребоваться для создания представлений, маршрутов, конфигураций и контроллеров, чтобы проверить ссылку ниже для этого

Шаг 3: добавьте путь пакета в корневой каталог composer.json в корневой файл composer.json "jai\Contact\": "packages/jai/Contact/src/" под psr-4

"psr-4": { "App\": "app/", "Jai\Contact\": "packages/jai/contact/src/", }

Шаг 4: добавьте поставщика услуг в конфигурацию приложения.

в вашем корневом /conifg/app.php под провайдерами добавьте поставщика пакетов услуг для подключения вашего пакета.

   'Jai\Contact\ContactServiceProvider',

Шаг 5: запустите компоновщик dump-autoload - убедитесь, что ошибок нет.

все сделано - теперь вы можете получить доступ к своему пакету через URL-адрес - "yourwebsite/contact"

Ресурс отсюда: https://github.com/jaiwalker/setup-laravel5-package