$query = DB::table('sales');
$query = $query->whereNotNull('sales.deleted_at'); // IS NOT NULL
$query = $query->whereNull('sales.deleted_at'); // IS NULL
$query = $query->whereRaw("(deleted_at IS NULL OR deleted_at = 0 OR deleted_at = '')");
<div class="d-inline-block mx-4"> <div class="form-check d-inline-block"> <input class="form-check-input" type="radio" name="deleted_at" id="deleted_at1" value="0" @checked(old('deleted_at', $searches['deleted_at']) == 0) > <label class="form-check-label" for="deleted_at1">有効</label> </div> <div class="form-check d-inline-block" > <input class="form-check-input" type="radio" name="deleted_at" id="deleted_at2" value="1" @checked(old('deleted_at', $searches['deleted_at']) == 1) > <label class="form-check-label" for="deleted_at2">無効(削除)</label> </div> </div>
$id = 999;
\DB::table('animals')->where('id', $id)->delete();
destroyメソッドはなぜか効かなくなったので中尉
$id = 999;
Animal::destroy($id);
JavaScript
let fd = new FormData(); // 送信フォームデータ
let data = {id:123, name:'古いねこ', age:15}; // バックエンド側に送信するデータ
let json = JSON.stringify(data);
fd.append( "key1", json );
// CSRFトークンを送信フォームデータにセットする。
let token = jQuery('#csrf_token').val();
fd.append( "_token", token );
fetch('neko/reg_action', {
method: 'POST',
body: fd,
})
.then(response => {
console.log('fetchの成功時に、サーバーから返されたレスポンスをJSON形式に変換するための処理');//■■■□□□■■■□□□
return response.text()
.then(text => {
try {
return JSON.parse(text);
} catch (e) {
this.jqErr.html(`バックエンド側でエラーが起きました。
${text}`);
}
});
})
.then(data => {
console.log('response後の処理。こちらに諸処理を記述します。');//■■■□□□■■■□□□
console.log(data);//■■■□□□■■■□□□
})
.catch(error => {
console.error(error);
alert('通信エラー');
});
バックエンド
とあるコントローラのアクションメソッド。
/**
* SPA型・入力フォームの登録アクション
* @return string
*/
public function regAction(){
// ログアウトになっていたらログイン画面にリダイレクト
if(\Auth::id() == null) return redirect('login');
$json=$_POST['key1'];
$res = json_decode($json, true);
$res['name'] = '新しい猫';
$res['age'] = 1;
$res['date'] = '2020-7-23';
$json = json_encode($res, JSON_HEX_TAG | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_HEX_APOS);
return $json;
}
web.php
Route::post('neko/reg_action', 'App\Http\Controllers\NekoController@regAction');
前提条件
ssh neko cd ~/example.com/neko/ mkdir neko2023
cd ~/git/neko2023 rsync -auvz ./dev neko:~/example.com/neko/neko2023/③ .envファイルをアップする。 .env.honbanファイルを開き、以下のDB設定を記入(~/git/neko2023/dev/.env.honban)
DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=3306 DB_DATABASE=sykzsc_neko DB_USERNAME=sykzsc_neko DB_PASSWORD=パスワード※DBユーザーとDBパスワードはXserverのコントロールパネルで作成できます。
rsync --force ./dev/.env.honban neko:~/example.com/neko/neko2023/dev/.env
ssh neko cd ~/example.com/public_html/search.example.com ln -s ~/example.com/neko/neko2023/dev/public neko「~/example.com/public_html/search.example.com」は一般ユーザーがアクセスできるパスです。