Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Noredami sukurti laravel projekta:
- 1. Instaliacijos dokumentacija: https://laravel.com/docs/5.8/installation
- 2. sukuriame nauja php storm projekta
- 3. Terminale paleisti komanda: composer create-project --prefer-dist laravel/laravel blog "5.8.*"
- 4. Einame i phpmyadmin, sukuriame nauja duombaze (pavadinimas naujienos)
- 5. reikia paredaguoti .env faila ir nustatyti prisijungimus prie duombazes
- DB_DATABASE=naujienos
- 6. Patikriname ar viskas veikia, paleidziame terminalo komanda: php artisan serve
- 7. Sukuriame laravel autentifikacijos sistema, terminale paleidziame komanda: php artisan make:auth
- si komanda sukuria:
- app/http/controllers/Auth kontrolerius
- resources/views/auth View failus
- database/migrations migracijos failai vartotoju duombazei
- app/user - user modelis
- 8. Paleisti komanda: php artisan migrate, pradiniam duombazes strukturos sukurimui
- Noredami sukurti savo nauja crud'a:
- 1. sukursime nauja duomenu bazes lentele: php artisan make:migration create_news_table
- 2. Migraciju dokumentacija: https://laravel.com/docs/5.8/migrations
- 3. Pabaige rasyti migracija, paleidziame komanda: php artisan migrate
- 4. Reikia sukurti news Modeli (idealiausia prasideda is didziosios raides ir yra vienaskaita):
- php artisan make:model News
- Modelis yra sukuriamas app/News.php folderyje
- 5. Modelio faile nurodome kokia db lentele jis turi naudoti:
- protected $table = "news";
- 6. Susikuriame naujienu kontroleri: php artisan make:controller NewsController
- kontroleris sukuriamas app/http/controllers/NewsController.php
- * galima naudoti --resource flag'a php artisan make:controller NewsController --resource
- * tada musu controleryje bus sukuriamos visis pradiniai funkciju aprasymai
- 7. Kontroleryje sukuriame index funkcija
- 8. Pakoreguoti routes/web.php faila ir prideti savo route'us
- Route::get('/news', 'NewsController@index')->name('news.index');
- 9. Pasitikrinam ar viskas veikia: http://127.0.0.1:8000/news
- 10. Susikuriame view faila: resources/views/news folderyje, pavadinimu index.blade.php (visu naujienu atvaizdavimui)
- @extends('layouts.app')
- @section('content')
- // Cia bus turinys
- @endsection
- 11. NewsController index funkcijoje kreipiames i News modeli, kad gautume visas naujienas:
- $news = News::all();
- * Failo virsuje naudojant nauja modeli, butinai turi buti:
- use App\News;
- 12. Index funkcijoje Atvaizduojame view faila ir perduodame duomenis is modelio:
- return view('news.index', compact(['news']));
- 13. Gryztame i savo view faila: resources/views/news/index.blade.php
- ir aprasome duomenu atvaizdavima
- @extends('layouts.app')
- @section('content')
- <div class="container">
- <div class="row">
- <div class="col-sm-12">
- <h1>Naujienos</h1>
- </div>
- @foreach($news as $newsItem)
- <div class="col-sm-12">
- <h3>{{ $newsItem->title }}</h3>
- </div>
- @endforeach
- </div>
- </div>
- @endsection
- 14. Noredami padaryti konkrecios naujienos atvaidavima, apsirasome nauja route'a
- routes/web.php faile;
- Route::get('/news/{id}', 'NewsController@show')->name('news.show');
- 15. Paspaudus ant naujienos pavadinimo turetume nukreipti vartotoja i news.show route'a
- <a href="{{ route('news.show', $newsItem->id )}}">
- Naujienos pavadinimas
- </a>
- 16. Reikia pakoreguoti NewsController show funkcija, kad gauti duomenis is modelio ir atvaidzuoti naujiena
- public function show($id) {
- $newsItem = News::findOrFail($id);
- return view('news.show', compact('newsItem'));
- }
- 17. Reikia sukurti news.show view faila, resources/views/news/show.blade.php
- ir aprasyti duomenu atvaizdavima
- @extends('layouts.app')
- @section('content')
- <div class="container">
- <div class="row">
- <div class="col-sm-12">
- <h1>{{ $newsItem->title }}</h1>
- </div>
- <p>
- {{ $newsItem->content }}
- </p>
- </div>
- </div>
- @endsection
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement