探検


【PHP】Laravel【フレームワーク】 Part.2

■ このスレッドは過去ログ倉庫に格納されています
1nobodyさん
垢版 |
2019/04/28(日) 11:07:09.57ID:2Xx6RWTL
テンプレ追加修正お願いします

Laravel
ウェブ職人のためのPHPフレームワーク

本家
https://laravel.com/

git
https://github.com/laravel

動画チュートリアル(英語)
https://laracasts.com/

日本語
http://laravel.jp/

書籍
Laravel リファレンス[Ver.5.1 LTS 対応] Web職人好みの新世代PHPフレームワーク
https://www.amazon.co.jp/gp/aw/d/4844339451

Laravelエキスパート養成読本[モダンな開発を実現するPHPフレームワーク!] (Software Design plus)
https://www.amazon.co.jp/gp/aw/d/4774173134

※前スレ
【PHP】Laravel【フレームワーク】
https://medaka.5ch.net/test/read.cgi/php/1503683914/
159nobodyさん
垢版 |
2019/04/30(火) 14:19:16.60ID:???
まぁ1人でやるような小〜中規模案件でも使い勝手はいいフレームワークだと思うけどね
160nobodyさん
垢版 |
2019/04/30(火) 14:22:00.95ID:???
>>155
それはどういう管理画面なの。
納品先のユーザが使用する管理画面?
それともアプリ製作者が使用する管理画面?
161nobodyさん
垢版 |
2019/04/30(火) 14:22:04.12ID:U8oZvJd3
>>158

何を言っているのかわからないんだが、
公開サイトのファイルも、管理画面のファイルも、
全部同じプロジェクトの中に入ると言っているのか?
162nobodyさん
垢版 |
2019/04/30(火) 14:23:46.53ID:U8oZvJd3
>>160

例えば、ネットショップを作るとする。
公開画面でユーザが買い物をする。
管理画面で注文について管理する。
当然双方での料金の計算ロジックは同じではなければならないから、
モデルに相当するものは共有したい。

どうするつもりか教えてくれ。
163nobodyさん
垢版 |
2019/04/30(火) 14:27:24.45ID:???
例が具体的過ぎて学校の宿題か
今度実装するアプリについてここで聞いているように思えるwww
164nobodyさん
垢版 |
2019/04/30(火) 14:30:24.24ID:???
namespace分けろよ

\App\Models 共通のモデル
\App\Frontend\Http\Controllers
\App\Admin\Http\Controllers

こんな感じで別々にするんだよ。
165nobodyさん
垢版 |
2019/04/30(火) 14:31:49.85ID:???
間違っても App\Http\Controllers\Admin,Frontend にするなよ。
166nobodyさん
垢版 |
2019/04/30(火) 14:32:45.13ID:???
従来の方法で良いんでは
AdminController作ってログインユーザーのroleがAdminのみ受け入れる
167nobodyさん
垢版 |
2019/04/30(火) 14:33:17.35ID:???
>>161
Laravel使ってないから参考にならないだろうけど講演で聞いた限りでは
YahooとAmazonは、買い物画面と管理者画面は同じプロジェクト内で作っている
168nobodyさん
垢版 |
2019/04/30(火) 14:37:25.44ID:???
固定観念の塊って感じw
169nobodyさん
垢版 |
2019/04/30(火) 14:40:59.09ID:???
>>155
無理に擦り寄って来なくていいってば
170nobodyさん
垢版 |
2019/04/30(火) 14:42:26.10ID:???
一般画面と管理画面でnamespace分けるでしょ
171nobodyさん
垢版 |
2019/04/30(火) 14:44:06.65ID:AFYaLSZi
こーれはまた、チンパジーだらけだな。
お前らのプロジェクトが火を吹きまくる未来が良く見えるぞ。
172nobodyさん
垢版 |
2019/04/30(火) 14:47:38.50ID:???
namespace分ける馬鹿ばっかりだなぁ
だからお前らのアプリは産廃になるんだよ
173nobodyさん
垢版 |
2019/04/30(火) 14:55:22.96ID:AFYaLSZi
>>167

そいつらは自分のところのシステムであるから如何様にも出来ようが、
お前達のプロジェクトがお前たちのさじ加減でどうにかなると良いのう。
はーはっはっは。
174nobodyさん
垢版 |
2019/04/30(火) 15:01:15.86ID:???
>>173
自分は>>162の場合どのように設計するつもりなの?
175nobodyさん
垢版 |
2019/04/30(火) 15:07:44.35ID:???
>>171
Laravel誕生のころからずっと業務システムに使ってるけど
Laravel製のプロジェクトで今まで火を吹いたことないな。
別プロジェクトのDjangoとFuelPHPは吹きかけたけど
176nobodyさん
垢版 |
2019/04/30(火) 15:13:19.89ID:AFYaLSZi
>>174

勿論、そのように設計するに決まっておろう。
同じプロジェクト内に作るが、
別のサイト単位で作るのじゃ。
馬鹿め。
Laravelとやらにそれができるのか?
お前にサンが救えるのか。
177nobodyさん
垢版 |
2019/04/30(火) 15:21:02.58ID:???
>>176
そりゃ確かにLaravelはできないね。Symfony2の方がきれいに作れそう。
178nobodyさん
垢版 |
2019/04/30(火) 15:48:58.55ID:???
>>176
その作り方はLaravelでは無理ですね。
そもそもそういうサイト設計するならLaravelは候補にすら上らん
179nobodyさん
垢版 |
2019/04/30(火) 15:54:30.97ID:???
Laravelで作った決済系のサイトだとこいつが有名ですね
https://github.com/Laracommerce/laracom
180nobodyさん
垢版 |
2019/04/30(火) 15:57:18.39ID:???
サイト単位はLaravelでもできるぞ
181nobodyさん
垢版 |
2019/04/30(火) 15:57:38.58ID:AFYaLSZi
>>177-178

では、上の方でnamespaceなどとほざいていたチンパンジーどもはなんであったのだ?
182nobodyさん
垢版 |
2019/04/30(火) 16:02:39.16ID:???
>>179
このショッピングサイトのソースだとnamespace方式でやってるな
183nobodyさん
垢版 |
2019/04/30(火) 16:09:12.89ID:???
>>181
現状最高だと思えるフレームワークは何ですか?
184nobodyさん
垢版 |
2019/04/30(火) 16:11:40.32ID:AFYaLSZi
>>183

お前はLaravelとやらを使っておれば良い。
185nobodyさん
垢版 |
2019/04/30(火) 16:14:06.79ID:???
普通に複数サイトもやってるけど
パッケージに分けなよ
186nobodyさん
垢版 |
2019/04/30(火) 16:16:01.40ID:???
>>184
お前が未来のフレームワークについて語ろうって自分から
言ってきたんだろうが
187nobodyさん
垢版 |
2019/04/30(火) 16:18:28.77ID:???
幼稚な嵐にかまうなよ……うれションして喜んでるだろうが
188nobodyさん
垢版 |
2019/04/30(火) 16:20:00.17ID:???
Laravelスレってみんな技術力低すぎないか?
AFYaLSZi様の言っていることはもっともだと思うんだが
189nobodyさん
垢版 |
2019/04/30(火) 16:21:07.80ID:???
様付けとかwww
ID消して自演かよww
190nobodyさん
垢版 |
2019/04/30(火) 16:26:49.10ID:???
様とかこいつ頭大丈夫か?
AFYaLSZiが一番技術力低いんだが
191nobodyさん
垢版 |
2019/04/30(火) 16:32:35.28ID:???
>>181
Laravelはマルチプロジェクトの概念がないからnamespace で分けるんだよ。
パッケージの使い方としては正しい。ただ設定値はフロントと管理で共通だからな。まぁ普通はサブドメインを分けて、ルーティングも分ければマルチプロジェクトになるのでそれで十分だろ。
192nobodyさん
垢版 |
2019/04/30(火) 16:34:58.30ID:???
このスレでまともなの俺とAFYaLSZiも含めて3〜4人ぐらいだな。
フレームワークに使われて自分の頭で考えるの放棄してるやつばっか。
193nobodyさん
垢版 |
2019/04/30(火) 16:53:19.85ID:???
お前ら平成最後の日に何やってんだよ
日本人なら日本人らしくアニメ見るとか漫画読むとかゲームするとかしろよ
194nobodyさん
垢版 |
2019/04/30(火) 17:00:38.13ID:???
俺、仕事しながら令和迎えるんだ
日本人は24時間365日仕事し続ける生き物だからね
日本人ぽいでしょ
あはははは
195nobodyさん
垢版 |
2019/04/30(火) 17:16:10.85ID:???
頭いい人はららベルより素晴らしいオレオレフレームワーク開発してよぉw
196nobodyさん
垢版 |
2019/04/30(火) 17:39:11.73ID:???
LaravelでDoctrine使ってる人いる?一度プロジェクト見た気がするんだか見つからない。
ActiveRecordよりEntityManagerのほうが集約コントロールしやすいので好きなんだが。
197nobodyさん
垢版 |
2019/04/30(火) 17:45:07.69ID:???
Laravel+Reactはいいぞ
198nobodyさん
垢版 |
2019/04/30(火) 17:57:42.82ID:???
このスレでまともなの俺とAFYaLSZiも含めて3〜4人ぐらいだな。
フレームワークに使われて自分の頭で考えるの放棄してるやつばっか。
199nobodyさん
垢版 |
2019/04/30(火) 18:05:29.44ID:???
>>196
これのこと?
https://www.laraveldoctrine.org/
200nobodyさん
垢版 |
2019/04/30(火) 18:19:47.91ID:???
露骨な自作自演始まったなw
201nobodyさん
垢版 |
2019/04/30(火) 20:07:57.39ID:???
Laravelが他のフレームワークと比べて
勝っているところと負けているところは何?
202nobodyさん
垢版 |
2019/04/30(火) 20:41:23.89ID:???
>>201
771 nobodyさん sage 2019/04/17(水) 08:51:04.13 ID:???
フルスタックなところかな。キャッシュ、シュケジューラ、ジョブ、ミドルウェア、認識、なんでも設定すればすぐ動く。英語で out-of-the-box って言うんだっけ?箱から出してすぐ使えるってやつ。
203nobodyさん
垢版 |
2019/04/30(火) 21:28:10.16ID:???
誰も一般画面と管理画面の実装方法答えられないのかよ。
204nobodyさん
垢版 |
2019/04/30(火) 21:31:33.76ID:???
そんな質問あったか?
205nobodyさん
垢版 |
2019/04/30(火) 21:35:17.37ID:???
別人だが俺も>>191みたいにサブドメイン切って置いてるな
DB共通にしつつユーザー認証用のテーブルだけ別のものに差し替えて認証するようにしてる
206nobodyさん
垢版 |
2019/04/30(火) 21:36:34.72ID:???
普通サブドメインだよな
207nobodyさん
垢版 |
2019/04/30(火) 21:43:53.51ID:???
基本的にデバッグ時は8000番でやってるからルート以外に置くの面倒なんよね

管理者用の認証テーブル使いたい場合はテーブル作って管理画面用プロジェクトのapp/User.phpに
protected $table = 'administrators';
とか足しとけばそっちのテーブル見に行くようになるし
208nobodyさん
垢版 |
2019/04/30(火) 22:08:49.75ID:???
>>207
auth.php に定義追加すれば Administratorモデルで認証できるよ。
マルチユーザで使えるように設計されてる。
209nobodyさん
垢版 |
2019/04/30(火) 23:56:00.04ID:hZKQ99fS
>>143
SyouhinモデルにmaxKosuuを作ってええとカスタマーと1x複数になるのか?
商品を受け取ってバリデーションに渡すと
210nobodyさん
垢版 |
2019/04/30(火) 23:59:59.53ID:???
お前らはLaravelで和暦対応どうした?
211nobodyさん
垢版 |
2019/05/01(水) 00:17:14.94ID:???
和暦使うような糞なシステムはないよ
和暦は役所書類のみ、それ以外は西暦でってのはビジネスの常識
昔はごくごくたまに会員情報の生年月日で使うことがあったが今は個人情報をできるだけ入れない作りが主流
212nobodyさん
垢版 |
2019/05/01(水) 00:19:32.15ID:???
大学関係の契約書だと和暦が多いね
213nobodyさん
垢版 |
2019/05/01(水) 00:40:20.75ID:???
この前「最近点画にハマってる」って言ったら変な顔された
214nobodyさん
垢版 |
2019/05/01(水) 00:42:02.27ID:FhfsDH51
TENGAにハマったまま平成が終わったのか
215nobodyさん
垢版 |
2019/05/01(水) 00:46:29.24ID:???
「てんかく」な
216nobodyさん
垢版 |
2019/05/01(水) 01:06:20.07ID:???
役所と近いところもまだまだ普通に和暦だよ
保育園とか学校とかね
事前に準備して4/2に対応終わったけど
217nobodyさん
垢版 |
2019/05/01(水) 07:54:59.12ID:???
>>213
そんなん言葉のパッと聞きで何言ってるか分かんないに決まってるだろ
218nobodyさん
垢版 |
2019/05/01(水) 10:27:15.16ID:???
>>165
こういう分け方なんで駄目なのか教えてもらえると嬉しい
219nobodyさん
垢版 |
2019/05/01(水) 11:12:48.07ID:???
昨日の ID:AFYaLSZi様の技術力の高さは素晴らしいね
Laravelスレ全員が目指すべき人だよ
220nobodyさん
垢版 |
2019/05/01(水) 13:06:20.57ID:???
令和時代のLaravel始祖の誕生であった
221165
垢版 |
2019/05/01(水) 14:38:56.83ID:???
>>218
疎結合にするためだな。FrontendとAdminはControllersの下位の概念ではないだろ?
AdminのためのModels,Http,Command
FrontendのためのModels,Http,Commandがあるんだ。
共通のものがあればAppの下でいい。
Adminをゴソっと消せば全てが消えるし、Frontendは何も関係せず動き続ける。お互いが交差しないようにパッケージを定義するんだ。
222nobodyさん
垢版 |
2019/05/01(水) 16:02:06.14ID:???
>>221
どちらかというとプログラム初心者的な質問なのに答えてくれてありがとう
223nobodyさん
垢版 |
2019/05/01(水) 16:41:22.20ID:gx0atIKK
>>221
Route::group['prefix'=>'admins']にしてるワイはやっぱおバカだったのか…
一応アドミニフォルダにコントローラはしまってるけど
224nobodyさん
垢版 |
2019/05/01(水) 16:44:44.92ID:gx0atIKK
namespace見たらApp\Http\Controllers\Adminでワロタ…
225nobodyさん
垢版 |
2019/05/01(水) 17:14:09.94ID:???
まぁ必ずやらなきゃいけないようなことでもないから自分のプロジェクトに合わせて好きに作ればいいよ。
namespaceをうまく分けるコツはuse文がなるべく少なくなるように定義するんだ。namespaceの上下内で完結するようにする。同レベルの横のnamespaceが3つも4つも出現したら何かが間違っている。
うまくやれば外部に露出するクラスがものすごく減る。
226nobodyさん
垢版 |
2019/05/01(水) 19:00:05.02ID:???
>>225
自然と意識できるようになるまでまだ先は長いな…たぶん
227nobodyさん
垢版 |
2019/05/01(水) 22:15:39.59ID:???
標準搭載されてるServiceManagerはオーバーライドできるけど、それやるとapp.phpを入れ替えないといけんのよね。
オーバーライドすんなってことなのかな。
でもログ周りとか微妙なんだよね。
228nobodyさん
垢版 |
2019/05/01(水) 22:18:58.71ID:???
>>227
ServiceManagerってなんだっけ。ServiceProvider のこと?自分はガンガン置き換えてるよ。
229nobodyさん
垢版 |
2019/05/01(水) 22:23:43.53ID:???
>>228
ああ、申し訳ないProvider。
logとかevent周りとか、こいつら置き換えて使ってる?
container作られる時に、結構余計なことしてるのよね。。
230nobodyさん
垢版 |
2019/05/01(水) 22:38:10.57ID:???
>>229
defer付いてるやつは遅延ロードだから使わなきゃ動いてないよ。
logは標準の定義は残して使いつつ、logger.hoge の名前で別インスタンス追加して必要なときに取り出してる。
だいたいこれで事足りる。
標準のプロバイダを継承してカスタマイズしなきゃいけなかったのは認証とメールだけかな。
231nobodyさん
垢版 |
2019/05/01(水) 22:41:07.33ID:???
お前らのオレオレカスタマイズ内容晒してけ
232nobodyさん
垢版 |
2019/05/01(水) 23:22:39.31ID:???
>>230
deferついてるならそれでいいんだけど、kernelの流れで読み込まれる連中でも、要件によってはそれなりにいらない事してるんだよね。認証周りは同じくカスタマイズしたけど結構めんどかった。
Facadeのメリット活かしつつ機能を取捨選択してると魔改造になっちゃうんだよなあ。
233nobodyさん
垢版 |
2019/05/01(水) 23:35:03.32ID:???
とても使いやすいし揃ってるframeworkだから、欲張ってしまうw
唯一eloquentだけはベンチとって愕然としたなー。あれは商用では使えないと思った。
234nobodyさん
垢版 |
2019/05/01(水) 23:36:19.22ID:???
>>232
ある程度の諦めは必要かもねー。自分で使わないからってFacade削除したら内部とか追加したライブラリで呼んでたとかあるから標準機能は触らないのが無難かもしれん。
235nobodyさん
垢版 |
2019/05/01(水) 23:42:35.06ID:???
>>234
そう。前者もあるけど特に後者が怖くて、標準の機能を削るって選択はなかなか出来ない。バージョンアップの時のオーバーヘッドがこれによって増大するから。ある前提で組まれてるものだから当然なんだろうけど。
削らないが無難。同意ですなあ
236nobodyさん
垢版 |
2019/05/02(木) 00:11:33.31ID:???
ゴリゴリにチューニングするフレームワークではないので機能追加はしても削除はしない方針です。
パフォーマンスが必要になったら札束で殴るしかない。
237nobodyさん
垢版 |
2019/05/02(木) 00:17:07.99ID:???
>>233
そんな遅い?使いにくいのは否定しないけど速度は他と大差ない気がする。
というよりORMでそこまで遅くなる部分があるとは思えないんだよな。
238nobodyさん
垢版 |
2019/05/02(木) 00:45:44.36ID:???
>>237
ちょっと言葉足らずだった。パフォーマンスがシビアに要求されるシステムでは使えない、って感じ。もちろん速度とコーディングの利便性がある程度バーターになるのはわかるけど。
Doctrine単体とかとの比較なんで、同じレイヤーの他ORMとの比較ではないよ。
というのもLaravelでパフォーマンスチューニング、いくつかの案件でやったけどほぼほぼeloquentがボトルネックだった、ってとこからきてる
239nobodyさん
垢版 |
2019/05/02(木) 01:14:42.40ID:???
Eloquentはマジックメソッドを多用したラッパーなんでオーバーヘッドはどうしても増える、PHP8のJITに期待
現状はcursor、バルクインサート、自作のバルクupsertなどで極力DBアクセス数を減らしとくしかない
240nobodyさん
垢版 |
2019/05/02(木) 01:27:03.92ID:???
うーん、なんかイマイチ信じがたい話ではあるな。
マジックメソッドについてはクラスのメタデータキャッシュして2回目以降の呼び出しは速いはずだし。
例えばDoctrineはアノテーション使ってるし遅くなる要因はこっちの方が大きそう。
そもそもマッピングは枯れた技術ではあるので遅いなら他のフレームワーク参考にして同程度まで速度改善できるず。
フレームワーク全体で遅いなら理解できるけどORM単体でそんなに差がでるとは思えないな。クエリが遅いとかなら理解できるけど。
241nobodyさん
垢版 |
2019/05/02(木) 01:43:38.97ID:???
>>240
いや、queryが遅いとかではなく、リレーションシップをCollectionで表現したり(出来たり)するじゃない。そもそもそういう使い方をされる事による速度の劣化であって、同じ使い方をすればdoctrineとかでも同じ結果になってただろうとは思う。
242nobodyさん
垢版 |
2019/05/02(木) 08:40:11.26ID:vhQh3nzL
お前達はなんでそんなフレームワークを使っているんだ?
修行でもしているのか?
243nobodyさん
垢版 |
2019/05/02(木) 09:57:18.77ID:???
使わない方が修行だと思うけどw
244nobodyさん
垢版 |
2019/05/02(木) 10:03:57.87ID:???
構造的セキュリティ担保するの面倒だしな
245nobodyさん
垢版 |
2019/05/02(木) 10:56:32.29ID:???
とりあえずmixがとても便利
246nobodyさん
垢版 |
2019/05/02(木) 11:35:46.24ID:???
Laravelのhelperかなりいいよね。関数単体もそうだしCollectionも良い。
PHPはどうしても配列プログラミングになっちゃうからCollectionを使い倒してほしい。
247nobodyさん
垢版 |
2019/05/02(木) 11:44:03.38ID:???
よく使うのはarray_get, pluck, tap, with,abort_if, throw_if, collectかな?
Collectionだとeach map first filter pluck。
248nobodyさん
垢版 |
2019/05/02(木) 11:47:52.32ID:???
>>245
現行モダンフロントのシステム作る上でFirebaseやAWS Lambdaやみたいなサーバレス以外では最後の砦感あるよね
ExpressみたいなNode系フレームワークは新規に手を出すには日本語情報少な過ぎるし(日本語情報は大規模修正入る前の旧版ばかり)
249nobodyさん
垢版 |
2019/05/02(木) 11:57:36.67ID:???
mixってwebpackのラッパもしくは代替みたいなもん?
250nobodyさん
垢版 |
2019/05/02(木) 12:33:53.14ID:vhQh3nzL
>>246
全然知らねぇんだけど、helperってもしかしてHTMLの自動生成機能の事?
アホか。要るか、そんなもん。
251nobodyさん
垢版 |
2019/05/02(木) 12:35:48.96ID:vhQh3nzL
mix? gulpでいいだろ。馬鹿か!?
252nobodyさん
垢版 |
2019/05/02(木) 12:37:46.98ID:vhQh3nzL
なんでLaravelのアホは、ガラパゴスジャパンじゃあるまいし、独自規格ばっかつかいまくるんだよ。
253nobodyさん
垢版 |
2019/05/02(木) 12:38:08.07ID:???
>>250
そのhelperではない
254nobodyさん
垢版 |
2019/05/02(木) 12:40:22.90ID:???
標準規格がゴミだから標準をラップした独自規格作るんでしょ。
255nobodyさん
垢版 |
2019/05/02(木) 12:43:17.92ID:vhQh3nzL
>>254

おまえ、gulp様のどのへんがゴミなのか、Yeah!
256nobodyさん
垢版 |
2019/05/02(木) 12:44:49.76ID:???
gulp使うんだったらwebpack使ったほうがまし
257nobodyさん
垢版 |
2019/05/02(木) 12:46:22.04ID:???
javascriptツールの話は他スレでやれよ
258nobodyさん
垢版 |
2019/05/02(木) 12:48:10.13ID:???
>>256
同意
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況