Opracowanie pakietu Laravel 5
Mam problem z utworzeniem pakietu w Laravel 5, ponieważ workbench
został usunięty.
Jak w tym wątku (Jak utworzyć pakiet w Laravel 5?), Goldorak sugeruje, że sami musimy stworzyć własną strukturę pakietów.
Więc, jak mogę utworzyć workbench ręcznie i przygotować wszystko do rozwoju pakietu?
3 answers
Korzystanie z pakietu warsztatowego laravel:
Możesz dodać illuminate/workbench
pakiet w Laravel 5 dodając do swojego composer.json
:
"illuminate/workbench": "dev-master"
Następnie dodaj WorkbenchServiceProvider do pliku config/app.php
:
'Illuminate\Workbench\WorkbenchServiceProvider'
Teraz musisz utworzyć plik config/workbench.php
, ponieważ został on usunięty z 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' => '',
];
Wpisz swoje informacje w tym pliku konfiguracyjnym, a następnie będziesz mógł użyć polecenia workbench:
php artisan workbench vendor/name
Tworzenie własnego pakietu struktura
W tym exemple stworzymy nasz pakiet o nazwie awesome w katalogu packages.
Oto struktura pakietu:
packages/
vendor/
awesome/
src/
Awesome.php
composer.json
- Vendor : nazwa Twojego dostawcy, zazwyczaj jest to Twoja nazwa użytkownika na github.
- Awesome : Nazwa Twojej paczki
- src : gdzie umieściłeś logikę biznesową
Aby wygenerować kompozytora.plik json możesz użyć tego polecenia w packages/vendor/awesome
katalog:
composer init
Teraz tworzymy klasę Awesome.php
w katalogu src
prostą metodą:
<?php namespace Vendor/Awesome;
class Awesome
{
public static function printAwesomeness()
{
echo 'Awesome';
}
}
Następnie dodajemy pakiet do Laravel composer.json
psr-4 autoloader:
"autoload": {
"psr-4": {
"App\\": "app/",
"Vendor\\Awesome\\": "packages/vendor/awesome/src"
}
},
[19]}i wyrzucamy autoloader composera
composer dump-autoload
Teraz możesz używać swojego pakietu wszędzie w projekcie laravel 5. Jeśli potrzebujesz konkretnej funkcji laravel, takiej jak usługodawca lub view publishing, użyj ich zgodnie z opisem w dokumentacji Laravel 5.0.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-19 17:32:10
Laravel 5 Standards with out workbench .
Set 1: Zainstaluj laravel jak zwykle.
Krok 2: Utwórz folder pakietu i Usługodawcę
W katalogu głównym utwórz folder wywołania "packages" /"vendorName"/"packageName"/src" Eg: root/packages/jai/Contact/src
Teraz przejdź do folderu src i utwórz klasę usługodawcy: "ContactServiceprovider.php "
Twój usługodawca powinien rozszerzyć ServiceProvider, który musi zaimplementować metodę rejestru.
Uwaga: jeśli chcesz możesz mieć dd ("testowanie"); w funkcja boot i przejdź do kroku 3, ale skopiowałeś plik, który chcesz utworzyć widoki , trasy, konfigurację i kontrolery sprawdź link poniżej dla tego
Krok 3: Dodaj ścieżkę pakietu w korzeniu {[3] } w korzeniu kompozytora.plik json "jai\Contact\": "packages/jai/Contact/src/"
pod psr-4
"psr-4": { "App\": "app/", "Jai\Contact\": "packages/jai/contact/src/", }
Krok 4: Dodaj dostawcę usług w konfiguracji aplikacji.
W Twoim root/conifg / app.php w obszarze dostawcy dodaj swojego dostawcę usług pakietowych, aby podłączyć pakiet.
'Jai\Contact\ContactServiceProvider',
Krok 5: Uruchom composer dump-autoload-upewnij się nie ma żadnych błędów.
Gotowe - teraz możesz uzyskać dostęp do swojego pakietu poprzez url- "yourwebsite/contact"
Źródło stąd: https://github.com/jaiwalker/setup-laravel5-package
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-24 13:27:47
Możesz użyć pakietu o nazwie packman . composer global require "hadefication/packman"
, prosty kreator pakietów dla Laravel.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-24 09:49:28