Laravel
ウェブ職人のためのPHPフレームワーク
本家
https://laravel.com/
git
https://github.com/laravel
動画チュートリアル(英語)
https://laracasts.com/
和訳ドキュメント
http://laravel.jp/
※前スレ
【PHP】Laravel【フレームワーク】 Part.6
https://medaka.5ch.net/test/read.cgi/php/1621940461/
探検
【PHP】Laravel【フレームワーク】 Part.7
2021/06/23(水) 15:58:05.76ID:s2LDmY5c
2021/06/23(水) 16:10:12.07ID:dAYq7Bk9
Laravelでの排他処理の実装方法
・サーバのディレクトリに「lock」というディレクトリを作成する。
・ディレクトリ作成に成功したらロック取得、失敗したら他のユーザーがロック中と判断する。
・サーバのディレクトリに「lock」というディレクトリを作成する。
・ディレクトリ作成に成功したらロック取得、失敗したら他のユーザーがロック中と判断する。
2021/06/23(水) 16:38:05.47ID:s2LDmY5c
>>2
SQLiteの実装ですか?
SQLiteの実装ですか?
2021/06/23(水) 16:39:22.47ID:IW5r+OwZ
すいません、前スレにも投稿した者です
教えてください
Laravelを使ってauto_incrementに欠番を出さないようにするにはどうしたらできますか?
例えばユーザーテーブルに新しく挿入してidが100のユーザーが作れますがそのユーザーを消してもう一度挿入するとidが100じゃなくて101になってしまって困ってます
教えてください
Laravelを使ってauto_incrementに欠番を出さないようにするにはどうしたらできますか?
例えばユーザーテーブルに新しく挿入してidが100のユーザーが作れますがそのユーザーを消してもう一度挿入するとidが100じゃなくて101になってしまって困ってます
2021/06/23(水) 16:42:25.73ID:s2LDmY5c
2021/06/23(水) 16:42:26.28ID:VEZUCqU6
2021/06/23(水) 16:44:29.44ID:VEZUCqU6
おまえらやっぱり前スレの流れを理解してなかったな
auto_incrementの初期値、増分、現在値は自由に変更できる
問題はそこじゃない
auto_incrementの初期値、増分、現在値は自由に変更できる
問題はそこじゃない
2021/06/23(水) 16:48:46.51ID:tmL8ZhQR
>>1
乙
乙
2021/06/23(水) 16:49:22.23ID:fAhQemtB
2021/06/23(水) 16:50:34.44ID:Qz0oHzkk
>>4て、いつも初心者のフリして変な質問投稿する荒らしでしょ?スルーで良いと思うんだけど。
2021/06/23(水) 16:51:37.21ID:fhtx9prY
>>4
前スレの英雄、幻の大手勤務さんなら分かるかも
前スレの英雄、幻の大手勤務さんなら分かるかも
2021/06/23(水) 16:52:29.57ID:s2LDmY5c
>>9
重複スレ立てるのは辞めましょう😅
重複スレ立てるのは辞めましょう😅
2021/06/23(水) 16:53:27.92ID:BKUUGjUQ
Laravelユーザーって、ここまで低レベルだったのか。
14大芋勤務
2021/06/23(水) 16:54:56.29ID:iSCgqYti >>4
1. Illuminate\Session\Middleware\StartSession を継承するミドルウェアを作る
2. 1. のクラスで handle() をオーバーライドする。中身はとりあえず継承元と全く同じ。
3. 2. にメソッド内の $this->saveSession($request); に注目する。
4. 3. の実行に条件をつける。
5. if (Route::current()->getName() === 'login') { $this->saveSession($request); } みたいな。
6. App\Http\Kernel から \Illuminate\Session\Middleware\StartSession::class を消す
7. 消した箇所に 1. で作ったミドルウェアのクラス名を入れる。
以上
多分動くと思う
動かしてないけど
1. Illuminate\Session\Middleware\StartSession を継承するミドルウェアを作る
2. 1. のクラスで handle() をオーバーライドする。中身はとりあえず継承元と全く同じ。
3. 2. にメソッド内の $this->saveSession($request); に注目する。
4. 3. の実行に条件をつける。
5. if (Route::current()->getName() === 'login') { $this->saveSession($request); } みたいな。
6. App\Http\Kernel から \Illuminate\Session\Middleware\StartSession::class を消す
7. 消した箇所に 1. で作ったミドルウェアのクラス名を入れる。
以上
多分動くと思う
動かしてないけど
2021/06/23(水) 17:04:12.72ID:OGRUFqXH
お前らって仕事してないの?
それともサボり?
それともサボり?
2021/06/23(水) 17:12:29.96ID:Qz0oHzkk
>>15
サボりやね。てか結果出してりゃ問題無いって会社だから、サボりというのも語弊があるかもしらん。
サボりやね。てか結果出してりゃ問題無いって会社だから、サボりというのも語弊があるかもしらん。
2021/06/23(水) 17:15:45.95ID:s2LDmY5c
18デフォルトの名無しさん
2021/06/23(水) 17:21:37.97ID:BKUUGjUQ 排他処理を知らないLaravelerちょーウケるw
2021/06/23(水) 18:14:16.21ID:/YVA12DF
2021/06/23(水) 18:36:00.83ID:BKUUGjUQ
2021/06/24(木) 11:59:31.03ID:vC44OkyR
Part.5使い切ってから立てろや
22デフォルトの名無しさん
2021/06/29(火) 19:44:02.62ID:Ny8IvFlJ DBのテーブル追加したら
モデルクラス必ず作らなければならないんですか?
モデルクラスの属性変数をいちいち作成するのが
めんどくさいです。
DB設計書でやたら列の数が多いし
1つ1つの列名がやたら長いので苦行です
テーブルの数もやたら多いです
モデルクラス必ず作らなければならないんですか?
モデルクラスの属性変数をいちいち作成するのが
めんどくさいです。
DB設計書でやたら列の数が多いし
1つ1つの列名がやたら長いので苦行です
テーブルの数もやたら多いです
2021/06/29(火) 21:04:26.64ID:uh5J/3s9
Ruby on Rails, Laravel など、各フレームワークのスレは、
この板ではなくて、WEB プログラミング板じゃないの?
この板は、プログラミング言語だけでしょ?
この板ではなくて、WEB プログラミング板じゃないの?
この板は、プログラミング言語だけでしょ?
2021/07/06(火) 00:46:36.26ID:I9lnsFCA
laravel8インストールしたんですけど、bootstrap入ってないですか?
中身見るとbootstrap入ってるみたいなんですが。。
中身見るとbootstrap入ってるみたいなんですが。。
2021/07/08(木) 11:53:31.39ID:vse1n/ST
>>24
何のbootstrapのこと言ってるのか知らんがjs/cssライブラリのbootstrapのことなら入ってないよ
何のbootstrapのこと言ってるのか知らんがjs/cssライブラリのbootstrapのことなら入ってないよ
26デフォルトの名無しさん
2021/07/23(金) 18:03:42.23ID:uJRAW/zm すみません、初心者なんですがわからないので教えてください。
windows10にてComposerのwindows版をインストールし、Laravelをインスコ
したのですが(公式文章のInstallation Via Composerを参照しました)
laravel newをすると
[RuntimeException]
php: does not exist and could not be created.
と出力され、プロジェクトの生成が完了しません。
Composerのインストール時に生成してくれるPHP.iniを用いても一緒でした。
どなたかお心当たりあれば教えていただけないでしょうか?
よろしくお願いいたします。
windows10にてComposerのwindows版をインストールし、Laravelをインスコ
したのですが(公式文章のInstallation Via Composerを参照しました)
laravel newをすると
[RuntimeException]
php: does not exist and could not be created.
と出力され、プロジェクトの生成が完了しません。
Composerのインストール時に生成してくれるPHP.iniを用いても一緒でした。
どなたかお心当たりあれば教えていただけないでしょうか?
よろしくお願いいたします。
2726
2021/07/23(金) 18:19:41.55ID:uJRAW/zm ちなみにlaravel newの実行結果全体はこんな感じ
phpは7.4.21を使っています。
パーミッションも問題はありませんでした。(フルアクセス可能)
_ _
| | | |
| | __ _ _ __ __ ___ _____| |
| | / _` | '__/ _` \ \ / / _ \ |
| |___| (_| | | | (_| |\ V / __/ |
|______\__,_|_| \__,_| \_/ \___|_|
Creating a "laravel/laravel" project at "./test1"
Installing laravel/laravel (v8.5.22)
- Installing laravel/laravel (v8.5.22): Extracting archive
[RuntimeException]
php: does not exist and could not be created.
phpは7.4.21を使っています。
パーミッションも問題はありませんでした。(フルアクセス可能)
_ _
| | | |
| | __ _ _ __ __ ___ _____| |
| | / _` | '__/ _` \ \ / / _ \ |
| |___| (_| | | | (_| |\ V / __/ |
|______\__,_|_| \__,_| \_/ \___|_|
Creating a "laravel/laravel" project at "./test1"
Installing laravel/laravel (v8.5.22)
- Installing laravel/laravel (v8.5.22): Extracting archive
[RuntimeException]
php: does not exist and could not be created.
2823
2021/07/23(金) 18:33:46.14ID:Nx0yKcVz2021/07/23(金) 19:04:43.92ID:ZVoJHJzW
>>26
権限の問題っぽい気がするけど、ここらへん試すとどうなるんだろ
・先にvendorフォルダを作ってから試す
・他のディレクトリで試す
・管理者権限でターミナルを起動して試す
・書き込みコマンドが動作するか試す echo 1 > test.txt
権限の問題っぽい気がするけど、ここらへん試すとどうなるんだろ
・先にvendorフォルダを作ってから試す
・他のディレクトリで試す
・管理者権限でターミナルを起動して試す
・書き込みコマンドが動作するか試す echo 1 > test.txt
3026
2021/07/23(金) 23:54:16.22ID:uJRAW/zm3126
2021/07/23(金) 23:54:22.38ID:uJRAW/zm3226
2021/07/24(土) 14:18:39.49ID:BFMGUj1B あきまへん、うごきまへん…
3326
2021/07/24(土) 15:11:40.35ID:pFWZhlfw phpのバージョンを7.3に下ろしたら動きました
お邪魔しました...
お邪魔しました...
2021/08/14(土) 18:02:41.42ID:jqCbupFB
php artisan serveで内蔵サーバーを立ち上げても20秒後にエラーも無く自動で停止するんですが何故ですか?
停止する前に急いでアドレスにアクセスするとserver.phpが開けないというエラーで停止します。
laravel 8.54.0
mysql 8.0.26
停止する前に急いでアドレスにアクセスするとserver.phpが開けないというエラーで停止します。
laravel 8.54.0
mysql 8.0.26
2021/08/14(土) 20:09:52.35ID:llS8vHuf
すみません自己解決しました
avastが原因でした
avastが原因でした
2021/09/18(土) 07:13:36.42ID:gPmVJWj6
Laravelの学習を始めた者です。
マイグレーションとEroquentの存在意義がわかりません。
両者とも、使えばそれなりのメリットがあるかもしれないけど、使わなくてもいいんですよね。
Eroquentを使わずSQLを直書きすれば済みそうだしそのほうが分かりやすい。
マイグレーションだって、DBの管理アプリを使ってテーブル設計すればそれで済む。
逆に、それらを使うと、そのシステムを担当するメンバーが代わったときコードの品質を維持できなくなりそう。
(コードのメンテの際、マイグレーションやEroquentの理解が必要となるため)
上記の認識は間違っており、だからこそマイグレーションやEroquentが存在すると思うので、
何が間違っているのか、教えてください。
マイグレーションとEroquentの存在意義がわかりません。
両者とも、使えばそれなりのメリットがあるかもしれないけど、使わなくてもいいんですよね。
Eroquentを使わずSQLを直書きすれば済みそうだしそのほうが分かりやすい。
マイグレーションだって、DBの管理アプリを使ってテーブル設計すればそれで済む。
逆に、それらを使うと、そのシステムを担当するメンバーが代わったときコードの品質を維持できなくなりそう。
(コードのメンテの際、マイグレーションやEroquentの理解が必要となるため)
上記の認識は間違っており、だからこそマイグレーションやEroquentが存在すると思うので、
何が間違っているのか、教えてください。
2021/09/18(土) 10:33:42.15ID:RLF/hlVT
DBの管理アプリってgooseとか?
2021/09/18(土) 10:34:28.49ID:FM0s+Kl2
>>36
もちろん、フレームワークとしてそれらを使うことが強制されているわけではないよ。
EloquntやMigrationに限った話ではなく一般論として書くけど、
それぞれの方法のメリットとデメリットを正確に洗い出しせているか、洗い出した上でプロジェクトのチームとしてその選択をしたのならそれに従えば良い。
肝心なのはプロジェクトごとにルールが明確で全員がそれに従うこと。
ある人はEloquentのクエリビルダを使うが、ある人はSQLを直書きする。なんてことが無いように。
しかし、それらを使わない理由が「コードのメンテの際、マイグレーションやEroquentの理解が必要となるため」だけなら、理由としては弱いと思う。
ある別のメンバーがそれらを理解できずにコードの品質が落ちる、という理屈が通るなら、
「○○の機能を使うと、新しいメンバーが参加する障壁となるから、もっと原始的な仕組みにしよう。原始的な△△なら誰でも理解している」は全てに言えてキリがなくなってしまわないだろうか。
例えば、
・Eloquentは理解に時間がかかるから使用NG
・Migrationも同じく駄目
・FormRequestも使わずにコントローラーにバリデーションのコードを書けば誰もが理解できる
・Moddlewareも使わずに全てのコントローラーの開始と終わりに必要なコードを書けばその処理に気づかない人はいないはず
・Helperも使わずに都度phpの標準関数を組み合わせて書けばいちいちLaravelのヘルパを知る必要は無い
・Observerは使わずにレコードの書き換えを行う全てのメソッドで必要な処理を書くべき
・36の言う「DBの管理アプリは良い」は○○だから使うべき
それらの基準を明確してからルールを決めて、それが適切なのかを他のメンバーから客観的な評価をもらうべき。
もちろん、フレームワークとしてそれらを使うことが強制されているわけではないよ。
EloquntやMigrationに限った話ではなく一般論として書くけど、
それぞれの方法のメリットとデメリットを正確に洗い出しせているか、洗い出した上でプロジェクトのチームとしてその選択をしたのならそれに従えば良い。
肝心なのはプロジェクトごとにルールが明確で全員がそれに従うこと。
ある人はEloquentのクエリビルダを使うが、ある人はSQLを直書きする。なんてことが無いように。
しかし、それらを使わない理由が「コードのメンテの際、マイグレーションやEroquentの理解が必要となるため」だけなら、理由としては弱いと思う。
ある別のメンバーがそれらを理解できずにコードの品質が落ちる、という理屈が通るなら、
「○○の機能を使うと、新しいメンバーが参加する障壁となるから、もっと原始的な仕組みにしよう。原始的な△△なら誰でも理解している」は全てに言えてキリがなくなってしまわないだろうか。
例えば、
・Eloquentは理解に時間がかかるから使用NG
・Migrationも同じく駄目
・FormRequestも使わずにコントローラーにバリデーションのコードを書けば誰もが理解できる
・Moddlewareも使わずに全てのコントローラーの開始と終わりに必要なコードを書けばその処理に気づかない人はいないはず
・Helperも使わずに都度phpの標準関数を組み合わせて書けばいちいちLaravelのヘルパを知る必要は無い
・Observerは使わずにレコードの書き換えを行う全てのメソッドで必要な処理を書くべき
・36の言う「DBの管理アプリは良い」は○○だから使うべき
それらの基準を明確してからルールを決めて、それが適切なのかを他のメンバーから客観的な評価をもらうべき。
2021/09/21(火) 22:15:36.66ID:8y5k+07l
>>38
レスありがとう。遅くなってスマン。
一般論として書くけどって書いてくれたように、一般論というか抽象論になってしまって、お聞きしたかった
論点がぼやけてしまいました。書いてくれたことはその通りだと思うんだけど。
マイグレーションやEroquentを、自分が参加するプロジェクトで採用してよかったor悪かった、など実体験の話があれば教えてください。
机上論ではなく自らの経験に基づく生々しい話だとうれCです。
レスありがとう。遅くなってスマン。
一般論として書くけどって書いてくれたように、一般論というか抽象論になってしまって、お聞きしたかった
論点がぼやけてしまいました。書いてくれたことはその通りだと思うんだけど。
マイグレーションやEroquentを、自分が参加するプロジェクトで採用してよかったor悪かった、など実体験の話があれば教えてください。
机上論ではなく自らの経験に基づく生々しい話だとうれCです。
2021/09/22(水) 06:35:31.33ID:/e5sJxh/
◯Eloquent
×Eroquent
×Eroquent
41勉強中
2021/10/18(月) 17:57:35.76ID:+xI8vuOA 初歩的な内容かも知れないけど教えてもらえると有難いです。
Windows上で LiveWire 入れて簡単なコード書いて動いた。
内容はネット上でみかけた、ボタンをポチすると数字がカウントアップするヤツ。
それをサーバ上で動かすと動かない。
あと、@livewireAssets だとなぜか展開してくれない。
とりあえず @livewireStyles + @livewireScripts 入れてる。
サーバはさくらインターネットとCPIでやってみた。
ブラウザのソースを比較してみてもTokenが違う程度で違いはない。
分かっている人には簡単な話なんだろうとは思うけど、ご教授頂けると有難いです。
Windows上で LiveWire 入れて簡単なコード書いて動いた。
内容はネット上でみかけた、ボタンをポチすると数字がカウントアップするヤツ。
それをサーバ上で動かすと動かない。
あと、@livewireAssets だとなぜか展開してくれない。
とりあえず @livewireStyles + @livewireScripts 入れてる。
サーバはさくらインターネットとCPIでやってみた。
ブラウザのソースを比較してみてもTokenが違う程度で違いはない。
分かっている人には簡単な話なんだろうとは思うけど、ご教授頂けると有難いです。
レスを投稿する
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【社会】40代以上のおじさん・おばさんは叩いてオッケーという風潮はなぜ加速したのか [七波羅探題★]
- 日本の場合、いつも凶悪な行動に移すのは極左なんだよね。右翼はほとんどなにもしない [201193242]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【朗報】外務省局長、中国側の要求を断固拒否。「高市さんの答弁は日本政府の立場を変えるものではないし、撤回しない」 [519511584]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 【実況】博衣こよりのえちえち歌枠🧪
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
