summaryrefslogtreecommitdiff
path: root/Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2022-01-24 19:34:26 +0100
committerSanto Cariotti <santo@dcariotti.me>2022-01-24 19:34:26 +0100
commit710f54c0156c5fa081bc6af1a68e7cb44723939b (patch)
tree056a85c362b7b9c5439506a76e0802e57342cc10 /Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php
parentb69d50c415ef1571bd42bb3eb1a1b3b38eab43dd (diff)
add example in laravel
Diffstat (limited to 'Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php')
-rw-r--r--Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php103
1 files changed, 103 insertions, 0 deletions
diff --git a/Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php b/Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php
new file mode 100644
index 0000000..39cf772
--- /dev/null
+++ b/Year_3/TSDWL/LARAVEL/iBook/app/Http/Controllers/BookController.php
@@ -0,0 +1,103 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Models\Book;
+use App\Models\Author;
+use Illuminate\Http\Request;
+
+class BookController extends Controller
+{
+ /**
+ * Display a listing of the resource.
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function index()
+ {
+ $books = Book::all();
+
+ return view('books.index')->with('books', $books);
+ }
+
+ /**
+ * Show the form for creating a new resource.
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function create()
+ {
+ $authors = Author::all();
+ return view('books.create')->with('authors', $authors);
+ }
+
+ /**
+ * Store a newly created resource in storage.
+ *
+ * @param \Illuminate\Http\Request $request
+ * @return \Illuminate\Http\Response
+ */
+ public function store(Request $request)
+ {
+ $book = new Book();
+ $book->name = $request['name'];
+ $book->published_at = $request['published_at'];
+ $book->is_online = $request['is_online'] ? 1: 0;
+ $book->author_id = $request['author_id'];
+
+ $book->save();
+
+ return redirect('/books');
+ }
+
+ /**
+ * Display the specified resource.
+ *
+ * @param \App\Models\Book $book
+ * @return \Illuminate\Http\Response
+ */
+ public function show(Book $book)
+ {
+ $authors = Author::all();
+ return view('books.edit')->with('book', $book)->with('authors', $authors);
+ }
+
+ /**
+ * Show the form for editing the specified resource.
+ *
+ * @param \App\Models\Book $book
+ * @return \Illuminate\Http\Response
+ */
+ public function edit(Book $book)
+ {
+ }
+
+ /**
+ * Update the specified resource in storage.
+ *
+ * @param \Illuminate\Http\Request $request
+ * @param \App\Models\Book $book
+ * @return \Illuminate\Http\Response
+ */
+ public function update(Request $request, Book $book)
+ {
+ $book->name = $request['name'];
+ $book->published_at = $request['published_at'];
+ $book->is_online = $request['is_online'] ? 1: 0;
+ $book->author_id = $request['author_id'];
+
+ $book->save();
+ return redirect('/books/'.$book->id);
+ }
+
+ /**
+ * Remove the specified resource from storage.
+ *
+ * @param \App\Models\Book $book
+ * @return \Illuminate\Http\Response
+ */
+ public function destroy(Book $book)
+ {
+ //
+ }
+}