Laravel 5.4 tworzy model, kontroler i migrację w pojedynczym poleceniu rzemieślnika


149

Mogę utworzyć model i kontroler zasobów (powiązany z modelem) za pomocą następującego polecenia

php artisan make:controller TodoController --resource --model=Todo

Chcę również utworzyć migrację za pomocą powyższego polecenia, czy to możliwe?


Myślę, że w tym przypadku flaga --resource nie jest potrzebna. - model wystarczy.
Luca Reghellin

Odpowiedzi:


410

Możesz to zrobić, jeśli zaczniesz od modelu

php artisan make:model Todo -mcr

jeśli biegniesz php artisan make:model --help, możesz zobaczyć wszystkie dostępne opcje

-m, --migration Tworzy nowy plik migracji dla modelu.
-c, --controller Tworzy nowy kontroler dla modelu.
-r, --resource Wskazuje, czy wygenerowany kontroler powinien być kontrolerem zasobów

Aktualizacja

Jak wspomniano w komentarzach @arun, w nowszych wersjach laravel> 5.6 można uruchomić następującą komendę:

php artisan make:model Todo -a

-a, --all Generuje migrację, fabrykę i kontroler zasobów dla modelu


32
Teraz możemy użyć php artisan make:model Todo -ado stworzenia modelu, migrację, kontroler zasobów orazfactory
Arun

dlaczego, na przykład, showparametr metody jest obiektem modelu podczas tworzenia za pomocą, make:model -mcra parametr make:controller --resourcemetody showto$id
Cr1xus

@ Cr1xus Ponieważ w drugim poleceniu musisz określić, którego modelu zasobów chcesz użyć, w pierwszym poleceniu flaga -r zna prawidłowy model, ponieważ właśnie go stworzyliśmy.
Christophvh,

kiedy używam tego polecenia, dlaczego nie tworzy ModelResource.php w katalogu app / http / resources?
tyasird

Zasób @tyasird oznacza, że ​​kontrolery zostaną wstępnie załadowane z modelem z automatycznym wstrzykiwaniem. Nie oznacza to zasobów api
Christophvh

21

Możesz zrobić model + migrację + kontroler , wszystko w jednym wierszu, używając tego polecenia:

php artisan make:model --migration --controller test

Krótka wersja: php artisan make:model -mc test

Wynik :-

Model został utworzony pomyślnie.

Utworzono migrację: 2018_03_10_002331_create_tests_table

Kontroler został utworzony pomyślnie.


Jeśli chcesz wykonać wszystkie operacje CRUD w kontrolerze, użyj tego polecenia:

php artisan make:model --migration --controller test --resource  

Krótka wersja: php artisan make:model -mc test --resource


1
użyj php artisan make: model --migration --controller --resource Test.
Affan

stary, najpierw tworzę, a potem publikuję. faktycznie używam podanego polecenia i dodam --resource na końcu, a tę pracę proszę sprawdzić od końca. Używam Laravel 5.4. może niższa wersja laravel nie obsługuje. @Udhav
Affan

Zainstalowałem świeżego Laravela, Twój kod sugestii działa, dziękuję @Affan :)
Udhav Sarvaiya

15

Możesz to zrobić za pomocą następującego polecenia:

php artisan make:model post -mcr

Krótko:

-m, aby utworzyć migrację

-c, aby utworzyć kontroler

-r, aby określić, że kontroler ma zasób


Op miał zasoby w swoim pytaniu, więc twoja odpowiedź jest niekompletna.
Landon Call

8

Zaktualizowano

Laravel 6 Poprzez model

Aby wygenerować migrację, selektor, fabrykę i kontroler zasobów dla modelu

php artisan make:model Todo -a

Lub

php artisan make:model Todo -all

Inne opcje

-c, --controller Tworzy nowy kontroler dla modelu

-f, --factory Tworzy nową fabrykę dla modelu

--force Utwórz klasę, nawet jeśli model już istnieje

-m, --migration Tworzy nowy plik migracji dla modelu

-s, --seed Tworzy nowy plik siewnika dla modelu

-p, --pivot Wskazuje, czy wygenerowany model powinien być niestandardowym modelem tabeli pośredniej

-r, --resource Wskazuje, czy wygenerowany kontroler powinien być kontrolerem zasobów

Więcej pomocy

php artisan make:model Todo -help

Mam nadzieję, że początkujący otrzymają pomoc.


1
To fajne
user3444748

7
php artisan make:model PurchaseRequest -crm

Wynik to

Model created successfully.
Created Migration: 2018_11_11_011541_create_purchase_requests_table
Controller created successfully.

Po prostu użyj -crm zamiast -mcr


4

Laravel 5.4 Możesz użyć

 php artisan make:model --migration --controller --resource Test

Spowoduje to utworzenie 1) modelu 2) kontrolera z domyślną funkcją zasobów 3) plikiem migracji

I otrzymałem odpowiedź

Model został utworzony pomyślnie.

Utworzono migrację: 2018_04_30_055346_create_tests_table

Kontroler został utworzony pomyślnie.



3

Aby utworzyć tryb, kontrolery z zasobami, możesz wpisać CMD w następujący sposób:

 php artisan make:model Todo -mcr

lub możesz sprawdzić wpisując

php artisan help make:model

gdzie znajdziesz wszystkie pomysły


2

Aby zrobić wszystkie 3: Model, kontroler i schemat migracji tabeli

napisz w konsoli: php artisan make:model NameOfYourModel -mcr



0

Nie musisz dodawać flagi --resource, po prostu wpisz następujące polecenie, a laravel utworzy całe pożądane zasoby

 php artisan make:controller TodoController --model=todo

0

Jak to robiłem do tej pory:

php artisan make:model Customer
php artisan make:controller CustomersController --resource

Najwyraźniej jest szybszy sposób:

php artisan make:controller CustomersController --model=Customer

0

Po prostu wypróbuj to polecenie na swoim terminalu

php artisan make:model Todo -mcr

Pod danymi wyjściowymi i modelem, kontroler z zasobami i plikiem migracji utworzy ...

Model created successfully.
Created Migration: 2019_12_25_105305_create_todos_table
Controller created successfully.

Dzięki za poświęcony czas @MD Masud, za miłe informacje, ta odpowiedź jest już udzielona.
Arun
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.