Commit 802605c5 authored by ArtemTropanets's avatar ArtemTropanets

add product create module

parent 9b3eb6c7
......@@ -28,7 +28,7 @@ class ProductController extends Controller
*/
public function create()
{
//
return view('product.create');
}
/**
......@@ -37,9 +37,18 @@ class ProductController extends Controller
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
public function store(/*Request $request*/)
{
//
$product = new Product();
$product->reference = request('reference');
$product->description_short = request('description_short');
$product->description_long = request('description_long');
$product->price = request('price');
$product->type = request('type');
$product->save();
return redirect('/');
}
/**
......
.product-list {
display: flex;
flex-wrap: wrap;
display: grid;
grid-template-columns: repeat(auto-fill, 200px);
grid-gap: 10px;
justify-content: space-between;
}
.product-list__item {
margin: 10px;
}
.product {
display: flex;
flex-direction: column;
align-items: center;
width: 200px;
padding: 20px 5px;
border: 1px solid transparent;
transition: border 0.3s ease;
......
{}
{
"/css/app.css": "/css/app.css",
"/css/welcome.css": "/css/welcome.css"
}
@import 'variables';
.product-list {
display: flex;
flex-wrap: wrap;
display: grid;
grid-template-columns: repeat(auto-fill, 200px);
grid-gap: 10px;
justify-content: space-between;
&__item {
margin: 10px;
}
}
.product {
display: flex;
flex-direction: column;
align-items: center;
width: 200px;
padding: 20px 5px;
border: 1px solid transparent;
transition: border .3s ease;
......
@extends('layouts.app')
@section('content')
<section class="create-product">
<div class="container">
<form method="POST" action="/product">
@csrf
<div class="form-group row">
<label for="reference" class="col-sm-2 col-form-label">Product reference</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="reference" name="reference" required>
</div>
</div>
<div class="form-group row">
<label for="description_short" class="col-sm-2 col-form-label">Short description</label>
<div class="col-sm-10">
<textarea class="form-control" id="description_short" rows="3" name="description_short" required></textarea>
</div>
</div>
<div class="form-group row">
<label for="description_long" class="col-sm-2 col-form-label">Long description</label>
<div class="col-sm-10">
<textarea class="form-control" id="description_long" rows="3" name="description_long" required></textarea>
</div>
</div>
<div class="form-group row">
<label for="product-type" class="col-sm-2 col-form-label">Product type</label>
<div class="col-sm-10">
<select class="custom-select custom-select-sm" name="type" id="product-type" required>
<option selected></option>
<option value="Phone">Phone</option>
<option value="Balalaika">Balalaika</option>
</select>
</div>
</div>
<div class="form-group row">
<label for="price" class="col-sm-2 col-form-label">Price</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="price" name="price" required>
</div>
</div>
<button class="btn btn-primary">Submit</button>
</form>
</div>
</section>
@endsection
......@@ -14,7 +14,8 @@ use Illuminate\Support\Facades\Route;
*/
Route::get('/', 'ProductController@index');
Route::post('/product', 'ProductController@store');
Route::get('/product/create', 'ProductController@create');
Route::get('/product/{product}', 'ProductController@show');
Auth::routes();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment