https://www.malasngoding.com/export-excel-laravel/
Selasa, 22 Desember 2020
Selasa, 15 Desember 2020
Selasa, 08 Desember 2020
Senin, 07 Desember 2020
Laravel 8 Jwt-Auth
- laravel new jwt
- cd jwt
- composer require tymon/jwt-auth
- php artisan vendor:publish
- pilih yang = Tymon\JWTAuth\Providers\LaravelServiceProvider
- php artisan jwt:secret
- edit file app/models/user.php
- menjadi<?phpnamespace App\Models;use Illuminate\Contracts\Auth\MustVerifyEmail;use Illuminate\Database\Eloquent\Factories\HasFactory;use Illuminate\Foundation\Auth\User as Authenticatable;use Illuminate\Notifications\Notifiable;class User extends Authenticatable{use HasFactory, Notifiable;protected $fillable = ['name','email','password',];protected $hidden = ['password','remember_token',];protected $casts = ['email_verified_at' => 'datetime',];}
- <?phpnamespace App\Models;use Illuminate\Contracts\Auth\MustVerifyEmail;use Illuminate\Database\Eloquent\Factories\HasFactory;use Illuminate\Foundation\Auth\User as Authenticatable;use Illuminate\Notifications\Notifiable;use Tymon\JWTAuth\Contracts\JWTSubject;class User extends Authenticatable implements JWTSubject{use HasFactory, Notifiable;protected $fillable = ['name','email','password',];protected $hidden = ['password','remember_token',];protected $casts = ['email_verified_at' => 'datetime',];public function getJWTIdentifier(){return $this->getKey();}public function getJWTCustomClaims(){return [];}}
- php artisan make:controller Api/Auth/LoginController -i
- ubah file app/Http/Controllers/Api/Auth/LoginController.php
- menjadi<?phpnamespace App\Http\Controllers\Auth;use App\Http\Controllers\Controller;use Illuminate\Http\Request;class LoginController extends Controller{/*** Handle the incoming request.** @param \Illuminate\Http\Request $request* @return \Illuminate\Http\Response*/public function __invoke(Request $request){//}}
- <?phpnamespace App\Http\Controllers\Auth;use App\Http\Controllers\Controller;use Illuminate\Http\Request;class LoginController extends Controller{public function __invoke(Request $request){$request->validate(['email' => 'required','password' => 'required']);$credentials = request(['email', 'password']);if (!$token = auth('api')->attempt($credentials)) {return response()->json(['status' => '0','data' => 'login','result' => ['message' => 'Phone atau Password Salah',]], 401);}$data = ['status' => '1','data' => 'login','result' => ['token' => $token]];return response()->json($data,200);}}
tambah route di api.php
Route::post('login','Api/Auth/LoginController');
mengedit app/config/auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
],
menjadi
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'jwt',
'provider' => 'users',
'hash' => false,
],
],
cek postman
localhost:8000/api/Login
localhost:8000/api/users
Selasa, 01 Desember 2020
DATA TABLES YAJRA
https://fahmidasclassroom.com/laravel-7-crud-using-datatables/
1. Install yajra datatables
$ composer require yajra/laravel-datatables-oracle:"~9.0"
2. Daftarkan provider dan facade pada file "config/app.php"
'providers' => [
....,Yajra\DataTables\DataTablesServiceProvider::class,
]
'aliases' => [
'DataTables' => Yajra\DataTables\Facades\DataTables::class,
]
3. Publish Vendor
$ php artisan vendor:publish --provider="Yajra\DataTables\DataTablesServiceProvider"
4. Buat Model & Migration
$ php artisan make:model Product -m
edit file "app\database\migrations\2020_12_24_204248_create_banners_table.php"
Schema::create('banners', function (Blueprint $table) {$table->id();//addcode$table->string('title');$table->text('img');$table->boolean('status');//encode$table->timestamps();});
edit file "app\Models\Product.php
<?phpnamespace App\Models;use Illuminate\Database\Eloquent\Factories\HasFactory;use Illuminate\Database\Eloquent\Model;class Banner extends Model{use HasFactory;protected $fillable = ['title','img','status'];}
4. Buat Controller
$ php artisan make:controller UserController -r
5. Buka UserController di folder "app/Http/Controllers" edit code menjadi seperti di bawah.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
//addcode
use App\Models\User;
use DataTables;
use Redirect,Response;
//endcode
class UserController extends Controller
{
public function index()
{
//addcode
if ($request->ajax()) {
$data = User::latest()->get();
return Datatables::of($data)
->addIndexColumn()
->addColumn('action', function($row){
$action =
'<a class="btn btn-info" id="show-user" data-toggle="modal" data-id='.$row->id.'>Show</a>
<a class="btn btn-success" id="edit-user" data-toggle="modal" data-id='.$row->id.'>Edit </a>
<meta name="csrf-token" content="{{ csrf_token() }}">
<a id="delete-user" data-id='.$row->id.' class="btn btn-danger delete-user">Delete</a>';
return $action;
})
->rawColumns(['action'])
->make(true);
}
return view('users');
//endcode
}
public function create()
{
//addcode
return view('menu.banner.create');
//endcode
}
public function store(Request $request)
{
//addcode
$request->validate([
'title' => 'required',
'img' => 'required'
]);
$imgName = $request->title.time()."_".$request->file('img')->GetClientOriginalName();
Banner::create([
'img' => $imgName,
'title' => $request->title,
'status' => $request->status
]);
$msg = 'Data Berhasil Di Tambahkan';
return redirect()->route('banner.index')->with('success',$msg);
}
public function show($id)
{
//
}
public function edit($id)
{
//
}
public function update(Request $request, $id)
{
//
}
public function destroy($id)
{
//
}
}
Langganan:
Postingan (Atom)
-
github : https://github.com/ArielMejiaDev/larapex-charts dokumentasi : https://larapex-charts.netlify.app 1. composer require arielmejiade...
-
QUERY UNTUK MENGATASI DUPLICATE DATA # SELECT BY HAVING COUNT Di gunakan untuk mencari data yang duplicate berdasarkan count group name...