X



[PHPフレームワーク]Laravel
レス数が1000を超えています。これ以上書き込みはできません。
0002nobodyさん垢版2013/01/15(火) 11:04:07.45ID:???
将来symfonyに移行するならLaravelが最適です
0004nobodyさん垢版2013/01/15(火) 16:05:07.24ID:???
Laravelはsymfonyのライブラリも組み込まれてるし概念もsymfonyに似ている部分があるから
0006nobodyさん垢版2013/01/16(水) 10:31:09.64ID:???
お前は何を言っておるのだ
0007nobodyさん垢版2013/01/16(水) 10:56:09.83ID:???
Q. 1と2とどっち?
A. まずは使ってみろ
0008nobodyさん垢版2013/01/16(水) 11:31:35.64ID:???
ダメな奴は何を使ってもダメ
0009nobodyさん垢版2013/01/16(水) 17:28:30.16ID:???
symfonyの1と2とどっちに似てるのか聞いとるのだ。
それぐらいちょっとは考えろ。
0011nobodyさん垢版2013/01/16(水) 17:36:40.15ID:???
勉強しろよとしか言いようがない質問するな!
0012nobodyさん垢版2013/01/16(水) 18:23:40.29ID:???
Laravel使える奴は日本で少ないから過疎
0013nobodyさん垢版2013/01/16(水) 23:40:45.77ID:???
去年は FuelPHP が「いま一番活発なフレームワークです(キリッ」
また来年は新しいのが出てくるのかなw
0014nobodyさん垢版2013/02/01(金) 00:21:23.40ID:???
使ってる人いないの?
俺は好きなんだけどな。
0015nobodyさん垢版2013/02/01(金) 13:58:22.30ID:???
まずどこが好きか言いなさい
0016nobodyさん垢版2013/02/10(日) 12:01:50.94ID:???
バリバリ開発者じゃないから他とのちゃんとした比較はできないけど、
使ってみて良かったところ
・デフォルトテンプレートが綺麗。「開発環境」色がない。
 最初に画面見た時にヤル気出た。
・routes.phpの多機能っぷりのお陰で自由度が高い。
 「規約より設定」が好きな人向け?
・マイグレーションが楽(FuelPHP比較)
・バンドルが結構豊富、インストールも簡単。
・アメリカ、イギリスでの支持が大きい。
 googleトレンドで見ると先進国ではFuel、Kohanaあたりは完全に食っていてYiiも食いそう。

残念だったところ
・日本語ドキュメントが少ない、英語のマニュアルもボリューム足りない。
・Laravel4で大幅に仕様が変わるらしくさらにドキュメント不足に。

趣味のwebアプリで使う分には不自由してないし、ドキュメントの少なさも調べる楽しさがあって個人的には気に入ってるよ。
0017nobodyさん垢版2013/02/11(月) 10:13:35.99ID:???
DBとかフォームはどんな風に書くの?
0018nobodyさん垢版2013/02/11(月) 22:52:48.85ID:???
>>17
EloquentっていうORMクラスを使うのが一般的みたい。
usersテーブルだったら、modelディレクトリにUserっていう継承クラスを作っておくだけで入出力ができる(もちろんテーブル名は設定可能)
あとはコントローラで
$users = User::where_in('id', array(1, 2, 3))->get();
とか書けば配列が帰ってくる。
この辺は本当に直感的でお手軽だと思う。

ユーザ管理なら有志のバンドルの「Sentry」っていうのを試してみたら多機能だしマニュアルが超親切で良かった。
デフォルトのAuthはちょっと非力かもしれない、ユーザごとのパーミッションとかないし。
足りない機能は自前かバンドルで補ってねっていうスタンスらしく、laravel4ではHtml、Formクラスすら拡張対応になるそうだ。
0019nobodyさん垢版2013/02/11(月) 23:04:22.32ID:???
書き忘れた、フォームはViewに
Form::open();
とかで作って、コントローラでは
$id= Session::get('id');
という具合にセッションから受け取る感じ。
上に書いたようにLaravel4ではFormが標準から外れるから書き方が変わるみたいだけど。
0020nobodyさん垢版2013/02/12(火) 01:45:54.37ID:???
日本語のブログ書けば?
0021nobodyさん垢版2013/02/14(木) 01:08:05.06ID:???
書く気はあるけど三日坊主だから続ける自信はない
今後web上で見かけたらよろしくね
0022nobodyさん垢版2013/02/14(木) 10:51:19.29ID:???
まずは最初の導入からよろ
0023nobodyさん垢版2013/02/23(土) 16:38:04.77ID:???
最初の導入も分からない奴はcakephpでも使ってろよ
0025nobodyさん垢版2013/03/14(木) 23:50:26.54ID:???
>>19
FromはInput::get('id')だろ。
で、バリデーションは
$rules = array('id' => 'required|integer|exists:user');
$validator = Validator::make(Input::only(array_keys($rules), $rules));
if ($validator->fail()) {

}

こんな感じ。正直もうちょっと待ってLaravel4から始める方が良い気がする。
ちなみにComposerもライブラリとしては勿論使える。これは3でも4でもだが。
0026nobodyさん垢版2013/03/23(土) 21:09:34.19ID:???
Laravel4はいつ頃リリース予定?
0027nobodyさん垢版2013/03/27(水) 20:36:02.45ID:r73Jwrfn
いままでフレームワーク使ったことなかった頃に、
Fluentクエリービルダーみて感動したのは俺だけなんだろうか。
0028nobodyさん垢版2013/04/06(土) 01:01:48.39ID:???
Laravel 4 throws NotFoundHttpException (htaccess, virtualhost)
http://forums.laravel.io/viewtopic.php?id=6671
http://stackoverflow.com/questions/15836443/laravel-how-to-route-to-public-file
http://net.tutsplus.com/tutorials/php/building-web-applications-from-scratch-with-laravel/

$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing meido/html (v1.1.2)
Downloading: connection...
Could not fetch http://nodeload.github.com/meido/html/zip/v1.1.2, enter your Git
Hub credentials to access private repos

https://github.com/settings/applications/new
https://github.com/patricktalmadge/bootstrapper/blob/master/composer.json

うーんまだ3使ってるひと多そうなのと composer まだ時期尚早なん
じゃないかとかその辺でごちゃごちゃしそうな予感がする…
0030nobodyさん垢版2013/04/27(土) 11:18:54.28ID:???
なんだかイベントとかで活気付いてきたね
0033nobodyさん垢版2013/05/27(月) 09:23:58.04ID:???
なんかすごい良さそうだね
0034nobodyさん垢版2013/07/23(火) NY:AN:NY.ANID:???
これを実際の案件に使うのは
まだ時期尚早なん?
0035nobodyさん垢版2013/08/05(月) NY:AN:NY.ANID:???
てかPHPなんだし、問題が起きたら自分で直せばいいよ。
PNE案件とか大概そうだし。
0036nobodyさん垢版2013/08/29(木) NY:AN:NY.ANID:???
laravelの日本語マニュアルの人と
和訳をdisった人って
まだ決着ついてないのね
和訳サイトにわざわざdisられましたとか載せてて意味あるのかな
向こうもtwitterとか連絡できる手段があるんだから直接ぶつければいいのに
0037nobodyさん垢版2013/09/01(日) 16:52:03.16ID:tsHzUIB2
最近のフレームワークの中では日本語ドキュメントが整備されてて
ちょっと感動したんだが何か問題があるのか
0038nobodyさん垢版2013/09/02(月) 17:19:53.84ID:???
日本語ドキュメントを参照しないと言語使えないという時点でプログラマ失格。
0039nobodyさん垢版2013/09/02(月) 20:20:43.08ID:???
すまんが俺プログラマじゃ無いんだわ
0042nobodyさん垢版2013/09/03(火) 11:07:30.02ID:???
この問題を2人で話し合って次の勉強会までには和解してもらいたいね
二人ともいい年した大人なんだからさ自分の意見を直接相手にぶつけることもできるでしょう
ずるずる関係悪いままで相手が折れるのを待ってるような情けない女々しい考えは捨てるべきだ
このまま引きずって双方が勉強会に参加されても場の空気が冷める場面に直面する可能性もある
前回の勉強会は実際に仲裁できるような人なんて1人もいなかった。俺もだけど
2人のために無駄に気を使わされるのも迷惑だし
解決できないならどちらとも勉強会には参加してもらいたくないのが次回も参加する俺の意見
オープンな勉強会に「(自分より知識ある|知り合いだ)から注意しにくい」とか関係ないから
0043nobodyさん垢版2013/09/04(水) 12:17:06.89ID:???
KとNで呼ばせてもらうけど
Kのサイトだけを読むと 一方的にNが悪いように見受けられるが
Nがdisる前に KがNをdisったから NがあそこでKをdisったって見方もできる
動画を見ても、Nの「アイツをdisってやった」オーラがハンパないもんね
KがNを怒らせたり嫉妬させるような出来事があったのかもしれない
Nが発表する前までに何か二人の関係にギクシャクする事があったんだろうと思う
0044nobodyさん垢版2013/09/04(水) 12:18:35.88ID:???
そんでKがサイトで一方的に文句たれていては火に油を祖即だけで何の解決にもならないと思うんだがなあ
何で二人で話し合えないのかね
0045nobodyさん垢版2013/10/29(火) 09:15:41.62ID:???
まぁ俺もそうだが、そういう人種だから仕方ねぇよな。
現場に入ると、初手から一方的にマチガイ対応するやつもいるし。
0048nobodyさん垢版2013/12/06(金) 10:42:03.44ID:???
このフレームワークってCakePHPみたいにCSSビルトインされていないの?
皆どうしてるの?一から書いている?
0049nobodyさん垢版2013/12/19(木) 21:55:15.69ID:???
Twitter Bootstrap とか Foundation5 とか使うといいよ
0050nobodyさん垢版2013/12/22(日) 21:23:45.96ID:???
バリデーションをなぜモデルでなくコントローラーでやるのか
その辺の思想?みたいなものがわかるページない?
0051nobodyさん垢版2013/12/26(木) 00:59:59.04ID:???
なぜモデルでやるのかそっちの方がわからん
0052nobodyさん垢版2013/12/26(木) 03:05:10.46ID:???
このモデルはこういうデータしか受け付けませんよエラー返しますよ
ってのがおかしいの?なにがわからん?
0054nobodyさん垢版2013/12/26(木) 19:24:59.42ID:???
>>50
Cakeから来た俺もそれ思った。「コントローラでヴァリデするんかー、へー」くらい。
何故かは深く考えたことない。
0055nobodyさん垢版2013/12/26(木) 23:35:57.39ID:???
codeigniterやそこから派生したFuelやkohanaなんかもvalidationは専用のクラスを使ってコントローラーでするってかんじなのな
なんでこんなことになってるか考えたら多分MVCしないで横着にコントローラだけですますとかrouterだけで済ますとかの軽量アプリを全然OKっていうところから来てるんだと思った
railsでコンソールからModel.create({name:'hoge', age:30})とかやった場合にバリデーション吐き出すのは素晴らしくスマートだと思ってたし
そうじゃないとおかしいだろとまで思ってたけどそもそも思想が違うんだろうな
Ardentとかいうの入れればモデルでバリデーションできるらしいけどもういいや
まずMVC語るのやめれ
0056nobodyさん垢版2013/12/27(金) 02:25:38.08ID:???
バリデーションはコントローラーが適切でしょ
モデルはないわ
ケークはダメフレームワークだから参考にしちゃだめだよ〜
0057nobodyさん垢版2013/12/30(月) 15:23:03.26ID:???
LaravelはComposerでパッケージをダウンロードして使うとサイズが大きくなっちゃうからいらねえよ
なんでWebフレームワークで15MB前後の要領食わなきゃいけないんだ
なめすぎ
0058nobodyさん垢版2014/01/02(木) 00:44:11.02ID:???
他もコアは同じような容量あるっしょ
0059nobodyさん垢版2014/02/13(木) 16:08:07.15ID:???
LaravelでFuel並みにモジュールが扱いやすくなるプラグイン無いんかな
VやらCやらがゴチャゴチャしてきて機能別に分類したいんだけどlaravel-modulesもなんか面倒くさい
設置してさっと使えるようにして欲しいわ
0060nobodyさん垢版2014/02/17(月) 03:45:11.10ID:???
モデルってDBのデータを入れた入れ物だけじゃないよ
0061nobodyさん垢版2014/02/18(火) 14:45:19.61ID:???
勘違いしてんだろ
モデルは手続きも含むものだ
そのメソッド独特の入力制限でもしたいんだろうが、
例えば同じテーブルの同じフィールドに別のバリデーションを設ける場合がそうあるのかって話だ
権限の違いなんかで制限が変わってくる場合はその権限用のバリデ付きモデル作れた方が後で見通しがしやすい
>>55が言ってる「横着」ってのはそれを面倒臭がってコントローラで済ますんじゃねぇってことでしょ
0062nobodyさん垢版2014/02/20(木) 13:16:42.50ID:???
俺もFuelphpじゃモデルでバリデーションやってるで
0063nobodyさん垢版2014/02/21(金) 01:50:12.79ID:???
DBのモデルのフィールドとユーザー入力が一致しないこともあるからな
0064nobodyさん垢版2014/02/22(土) 20:41:17.48ID:???
ところでLaravelて本当に活発なの?
日本で使ってる人が少ないだけ?
0065nobodyさん垢版2014/02/26(水) 16:18:34.86ID:99VMDxnD
基本的なことだったら申し訳ないですが質問。

検索条件をPOSTしてその結果を、条件入力した同じページの下部に表示させるお馴染みの処理なんですが、
Routes.phpのPOSTのところで、Redirect::toでGETへ戻すのがいいのか、 View::make('GETと同じヴュー') で
ヴューを作っちゃうのか、どっちがベストプラクティスなんですかね?
0066nobodyさん垢版2014/02/27(木) 19:44:22.56ID:???
return View::make(どこどこ)->with(変数名、変数) ← そのままechoできる
return Redirect::to(どこどこ)->with(変数名、 変数); ← セッションに突っ込む

この違いがどうにもはまるポイントなんだが。なんで同じwithで動きがちがうんですかね。
0067nobodyさん垢版2014/02/28(金) 22:19:35.96ID:FMgjLjQ5
ララベル全く知らないが、そういうのは普通GETで送信してそのまま表示する
GETにしておかないと、ページャーでページングして戻るボタンがウザいとか問題がある
検索処理じゃなくて、例えば掲示板の書き込みなんかの場合、POSTで送信して処理後にリダイレクトでGETし直す
必ずこうしないと行けない訳じゃないが、だいたいこう
0068nobodyさん垢版2014/02/28(金) 22:54:42.61ID:???
冪等かつリソースに副作用のない安全な処理はGETがいいよね
検索は基本的にGET
0069nobodyさん垢版2014/03/03(月) 16:22:26.75ID:???
>>67
>>68
ありがとう。GETで引数渡すってことは、URLの後ろにごちゃごちゃと長い検索条件をくっつけるあの方法ですよね。
確かにそれが一般的ですよね。ありがとう。
0070nobodyさん垢版2014/03/18(火) 12:15:59.33ID:???
この前laravelで作ったものを納品した。

これ、覚えること多くて奥が深いよ。
フレームワークのアップデートはコマンドで一発だから楽だな。

俺は個人的に大好きだけど、大人数でやる場合には、色々と取り決めが必要になる。じゃないと後々面倒。

後、クラスを追加した後にコマンドとか打たなきゃだから、vagrant環境で開発進めていって、後で皆のファイルをマージした方が楽かもね。
0071nobodyさん垢版2014/04/06(日) 03:39:10.60ID:???
FuelPHPとLaravelってどっちが勢いある?
0074nobodyさん垢版2014/04/06(日) 12:14:19.16ID:???
日本だとちょっとだけlaravelのが使われてる。勢いもかな

海外だとlaravel
0075nobodyさん垢版2014/04/07(月) 09:33:58.93ID:???
fuelphpは日本でしかはやってない印象
グーグルトレンド見るとひどい
0076nobodyさん垢版2014/04/24(木) 20:17:30.75ID:QhtXd2CQ
ララベル4興味があって使おうかなと導入を読んでいたのですが
何らかのライブラリを追加しつつ
ローカルで開発し終わったら
本番環境ではFTPでディレクトリ単位でローカルのファイルを
単にアップしたんじゃ動かない?
ローカルと本番のディレクトリ名を直したりとか必要?
もしくは、sshで追加したライブラリをインストールし直さなきゃ動かない?
0077nobodyさん垢版2014/04/25(金) 08:12:22.37ID:???
>>76
俺がマイナーなのかな?

php開発ってローカルでするものなの?
サーバーにサブドメイン切って、本番、開発、デザイナー用とか作らない?
環境揃うし、なによりrsyncで複製作れる。
そういう意味で、ドメイン、ホスト名、サブドメインはどこにも設定しないので問題ない。
ただし、デザイナーの書くテンプレに絶対パスが紛れる可能性は否定できない。

蛇足: PCがWindowsでもwin-sshfsでドライブをマウントできるから。
0078nobodyさん垢版2014/04/25(金) 13:17:43.82ID:???
Laravelをglobalにインストールする方法を教えてください。
アップデートを1箇所で管理したいのでプロジェクトごとにLaravelをインストールするやり方はしたくないです
0079nobodyさん垢版2014/04/25(金) 13:45:11.68ID:???
>>78
composerの管理をglobalでやればいいんでないの?
0080nobodyさん垢版2014/04/29(火) 16:05:38.32ID:???
それ試してから言ってるの?できないよ
0082nobodyさん垢版2014/04/30(水) 00:14:39.76ID:???
適当なディレクトリにjson置いて実行するだけじゃん。

include指定がめんどくさくなるから、プロジェクトの外に置くメリットをあまり感じないけど。
0083nobodyさん垢版2014/04/30(水) 01:45:55.65ID:???
そういう使い方はlaravelに用意されてない
よってcomposerでglobalインストールする方法はない
0084nobodyさん垢版2014/04/30(水) 07:30:12.23ID:???
>>83
そういう使い方が用意されてるFWなんてないっしょ
0085nobodyさん垢版2014/04/30(水) 07:58:36.89ID:???
外部のパスを指定するだけでは?
0086nobodyさん垢版2014/04/30(水) 08:33:56.35ID:???
laravelは他のFWよりcomposer分離は難しい

composer.jsonのアプリ部分とベンダー部分を分離しないとダメだし
artisanが敵でhookを書き換えないと正常に動かないし
require,includeが複数あるから面倒だし
path.baseの直下にvendorがあるとFW内で書かれているので対応しないとダメだし

workbenchあたりもなにかあるかもな

>>78
プロジェクト毎にlaravelは置いておいて
全composerを管理するシェルを作るとか、デプロイツール使うとかが現実的
0087nobodyさん垢版2014/04/30(水) 13:40:18.90ID:???
laravelをインストールすると21MBも使う。
5プロジェクトで100MB超
大規模に向かないフレームワークのくせにサイズ多すぎなんだよ
0088nobodyさん垢版2014/05/12(月) 03:37:39.65ID:???
そのサイズが問題になることはないから
どうでもよい。
0089nobodyさん垢版2014/05/16(金) 00:36:14.57ID:???
今日明日とLaraconやってますね
4.2は何が変わるんだろ
0090nobodyさん垢版2014/07/15(火) 20:56:22.33ID:???
なんかスレの勢い全然ないね;;
LaravelでCakeの出番はもうなくなったなーと思って早1年。
日本では全然ブレイクする兆しがない不思議さ
Cakeより何十倍もLaravelのが出来がいいと思うのだけどねぇ
0091nobodyさん垢版2014/07/18(金) 01:47:04.66ID:???
まだまだ日本語の情報少ないし、使ってるフレームワークを切り替えるのは大変だしね
2chってこういうプログラミング関連の書き込み意外と少ないし
0093nobodyさん垢版2014/07/18(金) 14:12:32.46ID:???
意識高い系は他に流れた
それが健全だと思うわ
0094nobodyさん垢版2014/07/18(金) 14:57:02.55ID:???
意識低い系はCakeからRailsに移ったが
意識高い系はどこからどこに移ったんだ?
0095nobodyさん垢版2014/07/18(金) 15:29:48.90ID:???
2chから人が流れたって話し
0096nobodyさん垢版2014/07/18(金) 15:31:24.46ID:???
そういうことか
自己顕示欲を出せるところ増えたしな
0097nobodyさん垢版2014/07/19(土) 05:11:38.64ID:???
>>96
最近だとqiitaとかかな。質問できないのが辛いが
0098nobodyさん垢版2014/07/19(土) 08:44:37.36ID:???
codeigniterんやめて、だいぶlaravelにもなれてきた
アイデアやライブラリもたまってきたけど、だから何?って感じ

ブログ書いてる暇ないし
0099nobodyさん垢版2014/07/19(土) 11:02:14.21ID:???
>>97
コメント書けるでしょ

Laravelに限らないけど、情報を共有しようとする姿勢の人が増えないと流行らないだろうね
でも海外じゃあ十分流行ってて情報もあるから、英語できれば問題ないね
0100nobodyさん垢版2014/07/19(土) 12:42:35.92ID:???
2chの方がレスポンスが早い、気がする。
有用かどうかはともかくw。
0101nobodyさん垢版2014/07/19(土) 13:21:08.16ID:???
2chは聞く場
Qiitaは書く場

今まで2chで答えてた人は
自己顕示欲を出したいだけなので、書きたかっただけ
0102nobodyさん垢版2014/07/19(土) 13:23:10.77ID:???
しばらくしたらStack Overflowが日本に進出する予定だから質問する場ができるよ
0103nobodyさん垢版2014/07/19(土) 22:21:54.55ID:???
アソコに日本語版とか必要なんかね。
そもそも日本語情報じゃなきゃいけない場合って、込み入った内容だし、コードで会話するのがエンジニアでしょ。
アウトプットの場所はあって良いけど。
0105nobodyさん垢版2014/07/20(日) 12:32:41.46ID:???
人がいないわけではなさそうなので
せっかくだから質問してみる

artisanコマンドの中で
use Menber;
と書いたらしかられた

modelsをロードするには、何をおまじない書いたらいい?
0107nobodyさん垢版2014/07/20(日) 15:28:23.66ID:???
>>106
いや、そういう問題じゃなく(typoはあやまるが

include_path通しただけじゃだめだよね
0108nobodyさん垢版2014/07/20(日) 15:52:08.73ID:???
>>107
あ、include_pathもuseもなしで、いきなり使えるのか

やられた!
0109nobodyさん垢版2014/07/20(日) 17:41:38.86ID:???
ここよりもgoogle グループで質問したほうが人はいる
0110nobodyさん垢版2014/07/20(日) 17:43:20.39ID:???
>>90
日本ではPHPで開発する機会が減ってるからPHPのフレームワークネタはもう盛り上がらない
0112nobodyさん垢版2014/07/20(日) 18:01:02.19ID:???
日本の主流派は
cake→railsって流れ
0113nobodyさん垢版2014/07/21(月) 00:06:40.15ID:???
ITに限らんかもしれんけど、アメリカにワンテンポ遅れて流れが来る感じだね
Laravelも来年あたりから本格的に来るのかねー

ところで、githubあたりでそれなりの規模のあるアプリのプロジェクトとかってないかな?
他の人が、どういうふうに書いてるのか読みたいんだけど サンプルに毛が生えたやつしか見つけきれん orz
0114nobodyさん垢版2014/07/21(月) 01:25:17.17ID:???
>>112
そんなに多くの企業がRails使ってんのかな
0115nobodyさん垢版2014/07/21(月) 01:45:47.36ID:???
あぁ、主流派と多数派は違うか
0116nobodyさん垢版2014/07/21(月) 09:08:28.86ID:???
ていうか、cakeがはやったのが、信じられない
(はやった理由は理解してる)
0117nobodyさん垢版2014/07/21(月) 18:30:32.94ID:???
Railsは流行りにのりたくて使ってるだけの会社、個人が多い気がする
0118nobodyさん垢版2014/07/22(火) 23:26:13.08ID:???
1回は使ってみるものだろ。
Rails以降のフレームワークのほとんどは、フォロワーとしてアンチとして何かしらの影響受けてるんだから。
0119nobodyさん垢版2014/07/23(水) 02:13:51.90ID:???
cakeもrailsもアーリーアダプターは良いけど、レイトマジョリティは全体的に低レベルでウンザリする。
そんな中、ここの皆はLaravelのアーリーアダプター。知見を集めて一歩先んじておこう。
0120nobodyさん垢版2014/07/23(水) 11:43:33.12ID:???
小規模開発ならphpで十分と思うがどうだろう?レンサバも安いし
0122nobodyさん垢版2014/07/23(水) 20:15:59.00ID:???
Laravelいいなーと思ったけどちょっと遅いな…
0123nobodyさん垢版2014/07/23(水) 20:23:20.19ID:???
一緒にHackも使えばいいよ
0124nobodyさん垢版2014/07/23(水) 20:24:30.82ID:???
大規模で自由度のある仕組みはリーダーの統率力に左右されそう
0125nobodyさん垢版2014/07/24(木) 10:47:19.92ID:???
>>104
コードで会話。わかるわ〜。
英語のブログの文章読むの辛いがコードが書いてあると読みやすくなる
0126nobodyさん垢版2014/07/24(木) 22:00:49.50ID:???
>>125
$you = 'shit';
とか
$var1 = 'fuck';
$var2 = 'you';
echo $var1 . ' ' . $var2;
とかね
0127nobodyさん垢版2014/07/25(金) 08:32:52.53ID:???
コード読めて英語読めないのはなぜか
0128nobodyさん垢版2014/08/01(金) 19:36:06.71ID:???
echo "プログラマはコードで会話だぜ";
0129nobodyさん垢版2014/08/05(火) 19:51:31.98ID:???
GoogleのトレンドでLaravelが急上昇だと知り、マニュアルをサクっと
読んでみたのだが、何がよいのかわからなかった。
CodeIgniterから乗り換えようと思ったんだけど。

そんな僕に、Laravelの良さを教えてください。
0130nobodyさん垢版2014/08/07(木) 01:30:58.93ID:???
フレームワーク設計のセンス
0131nobodyさん垢版2014/08/07(木) 08:07:16.55ID:???
buckbitとかでgit管理したlaravelぱねぇ

開発クローンの作成やメンテが瞬時だ
(composerの実行時間は除く)
0132nobodyさん垢版2014/08/07(木) 10:24:30.53ID:???
>>129
オワコンフレームワークを使い続けるのは、いつか破たんするから。
0133nobodyさん垢版2014/08/07(木) 17:50:58.64ID:???
ぶっちゃけると既存のPHPフレームワークの中では一番Railsに近いからw
つまりLaravelの良さはRailsの良さと直結する
RailsいいけどRubyだから環境を選ぶからなぁ って人がこぞってLaravel使ってるんじゃないかな 特に海外は。
0134nobodyさん垢版2014/08/07(木) 20:19:49.13ID:???
Railsクローンだけど、Railsよりシンプルでいい
0135129教えて君垢版2014/08/08(金) 06:43:05.53ID:???
Railsに近いから良いと言われても、Railsを知らないのでワカリマセン・・・
Laravelのどこがいいのでしょうか?

・・・と質問しても、なかなか一言で答えられるようなモノでは
ないですよねきっと。
0136nobodyさん垢版2014/08/08(金) 07:51:52.77ID:HCj6Owhx
IoCコンテナでクラスを疎結合にできる
0138nobodyさん垢版2014/08/10(日) 00:48:13.42ID:???
マジックメソッド祭りでエスパー能力が鍛えられる
コードリーディングし辛すぎ泣きそう
0139nobodyさん垢版2014/08/10(日) 15:14:32.38ID:???
ソースコードの読みやすさも売りの一つだと思うけどね
0140129垢版2014/08/11(月) 21:58:58.35ID:???
皆様ありがとうございました。
とりあえずお盆やすみは、Laravelマニュアルを読んで、
動かして見ます。

ありがとうございました。
0141nobodyさん垢版2014/08/18(月) 15:34:37.64ID:???
RailsのようなSinatraのような。
0142nobodyさん垢版2014/08/20(水) 15:22:46.99ID:???
PhpStormでBladeの補完できてる〜
0144nobodyさん垢版2014/08/29(金) 11:25:59.77ID:???
PHPもLaravelも初心者です。以下、質問です。
ORMとクエリビルダーはどちらを先に覚えるべきなんでしょうか。
セオリーがもしあるなら知りたいです。特にないならクエリビルダから触ってみようと思います。
0145nobodyさん垢版2014/08/29(金) 18:56:32.23ID:???
>>144
同時一択w

モデルはORMで書くぺき

しかしstatic関数やコントローラーではビルダーが必要

今日明日というスパンでいうなら、ORMからってこと
0147nobodyさん垢版2014/09/13(土) 00:03:01.57ID:???
4.3で、dir構成変わりすぎw
0148nobodyさん垢版2014/09/19(金) 15:50:04.04ID:???
やっと学習するに値する一強時代くるの?
0150nobodyさん垢版2014/10/19(日) 16:09:25.24ID:???
どっかにサンプルいっぱいあるサイト知らない?
公式は見たけど、いまいち使い方がわからん。
0153nobodyさん垢版2014/10/21(火) 00:11:48.48ID:???
>>152
ありがてぇ、ありがてぇ
早速見てみる。
0154nobodyさん垢版2014/10/22(水) 19:27:44.48ID:???
なんだかこれ、理解するの難しいな。
解説日本語だけど、専門用語多くて、いまいちわからんw
0155nobodyさん垢版2014/10/23(木) 14:30:11.68ID:???
Eloquent難しすぎワロタw
解説読んでも全然意味わからねーww
0156nobodyさん垢版2014/10/25(土) 09:54:05.27ID:???
初めて入れてみたけど最初全然わからない
fuelphpを入れてみてそのマニュアルからやっと構造が見えてきたけど
public/index.php をアクセスするなんて推測できなかった
もうちょっとなんとかならないか
一番最初だけにかなり損しているのでは?
0157nobodyさん垢版2014/10/25(土) 11:48:53.33ID:???
public/index.phpにアクセスするのがそんなに変か???
外に見せるものだけpublicに置くのは当たり前だし、普通のPHP有効なWebサーバならindex.phpがDirectoryIndexになってるだろうし。
0158nobodyさん垢版2014/10/25(土) 14:53:21.38ID:???
これ、マニュアルこれでええんか?
丁寧に翻訳されてるのは嬉しいが、これだけじゃさっぱりわからん。

テンプレートに関するところなんて、これで理解できるわけ無いだろう。
http://laravel4.kore1server.com/docs/42/templates
「layoutプロパティーをコントローラーで指定すれば、指定されたビューが生成され、アクションからレスポンスが自動的にリターンされます。」
って、日本語でおkって感じなんだがw

しかも、仕方なく解説サイト見ても、1つ2つ前のバージョンのものしか見つからず、
書式が変更になってて全然動かんし…。
やっぱりこういう時に活発なフォーラムが必要と痛感するわ。
0159nobodyさん垢版2014/10/25(土) 15:01:43.88ID:???
>>156
全然わからないという気持ち、よくわかるよ。
最初は、F/Wはとてつもなく難しい。

さっぱり分からなくても、すこしづつやって、「動いたよバンザイ!」って気持ちを
その都度その都度持ち続けられれば、そのうち使えるようになるよ。


そもそもWebアプリを開発するには、PHPの文法、HTML、Webサーバの構築、
HTTPプロトコルの理解、リダイレクトの理解、アクセス権の理解などなど多くの
知識が必要で、Winアプリの開発などとは比較にならないほど大変なのよ。
開発環境を作るだけでも大変なの。

がんばれよ〜
0160nobodyさん垢版2014/10/25(土) 15:16:27.79ID:???
>>158
テンプレートのマニュアルは、これで必要にして十分だと思うけどな。


> layoutプロパティーをコントローラーで指定すれば、指定されたビューが生成され、
> アクションからレスポンスが自動的にリターンされます。

的確な解説だと思うが、F/W初心者にはわからないかもしれないね。
「日本語でおk」って気持ちはよくわかる。

文章にいちいち文句言わないで、とにかく動かしてみるのが良いと思うぞ。
0161nobodyさん垢版2014/10/25(土) 15:28:00.08ID:???
いや、別に文章には文句言って無くて、
これだけだと全然テンプレートの解説になってないってことを言いたいわけよ。

Bladeテンプレートの方はたくさん書かれてんのに、この解説だけすげー投げやり。
そして試しにテストしながら動かしてんだけど、
これでは何をテストしていいやらそれすらわからんということ。

そもそもビューの使い方は「View::make」で指定するんちゃうんかい!
全然自動ちゃうやんけ!
ただコントローラーにビュー指定してんのとテンプレートとなんの関係があるんだよ。
と、思ってるところ。
0162nobodyさん垢版2014/10/25(土) 18:45:52.73ID:???
英語聴けるなら、laracastとか。
0163nobodyさん垢版2014/10/25(土) 19:20:49.99ID:???
これってルーティングとかキャッシュされてるってことある?
XAMPPでテストしてんだけど、さっきやって動かなかったやつが、急に表示されたりするんだけど…
単なるスペルミスかな?
0164nobodyさん垢版2014/10/25(土) 22:45:34.51ID:???
確かに初見でこの例だけ見ると混乱するかも

ビューとレスポンスの章のビューの部分を既に読んでView::makeしてreturnする普通の手法は心得てるとして
http://laravel4.kore1server.com/docs/42/responses
テンプレートの章では@extendsによる拡張の説明&共通レイアウトの分離の例を出してから
コントローラーで継承するレイアウトを指定してcontentにテンプレートを割り当てる便利な方法もあるという流れのほうがすんなり入りそう

FWの歴史を考慮すればコントローラーレイアウトが基本なのかもしれないけど
個人的にはあまり使わないんだよなあ
0165nobodyさん垢版2014/10/25(土) 22:55:02.42ID:???
自動的にリターンってところの解釈の違いか?
コントローラーアクション内で明示的にレスポンスをreturnせずとも
レイアウトにコンテンツのテンプレート突っ込んどくだけで
後はよしなにやってくれるというだけの話なんだが
0166nobodyさん垢版2014/10/26(日) 17:53:21.99ID:???
ふー、やっとブレードレイアウトも全体像がわかった。
なんでもっと分かりやすく解説してくれないんだろう。
わざと分かりにくく書いてテストさせようとしてんのかな?
0167nobodyさん垢版2014/10/26(日) 21:21:49.32ID:???
このF/W使うとコーディングが楽しくなるというウリらしいけど。。。

ちょっと見た限り、メソッドの名前にクセがありすぎ。
楽しくなるどころか、とてもじゃないけど苦痛になりそうだな・・・

FuelPHPとかCodeIgniterのほうが、よっぽど素直。
0169nobodyさん垢版2014/10/26(日) 21:56:45.34ID:???
将来性なんて、どんなFWも”どんぐりの背比べ”だと思う。

今はLaravelはトレンドかもしれないけど、1年後には廃れる気がしている。

FWを選ぶなら、今現在自分にとって最高と思えるFWを選ぶべきじゃないかな。
0170nobodyさん垢版2014/10/27(月) 03:00:10.50ID:???
安定性でいえばzendしかないが糞めんどいからな
今アメリカじゃlaravelとphalconって大方独占してるらしいけど
両方とも新規すぎて何とも言えないね
0171nobodyさん垢版2014/10/27(月) 22:39:38.94ID:???
これってルーティングをgroupでまとめてgetとか書いていく方法と、
コントローラーでrestフルに書く方法あると思うんだけど、
どっちがオススメとかある?
0172nobodyさん垢版2014/10/27(月) 23:05:53.00ID:???
個人的にはコントローラーでまとめてgetIndex()とかpostProfile()とか指定するのが楽で好み
ドキュメントにはImplicit Controllers(暗黙的なコントローラー)と書いてある
ルーティングを一覧したい派には不評みたいだけど
0174nobodyさん垢版2014/10/28(火) 01:37:38.62ID:???
ミドルウェアって、
「HTTPなんてリクエスト送ってレスポンスが返ってくるだけだし、フィルタみたいな感じで処理挟めるんだから、じゃあそれをフレームワークに依存しない共通のインタフェースで書こうよ」
ってこと?
0175nobodyさん垢版2014/10/28(火) 07:01:32.65ID:???
Laravelは、Symphony兄貴にのっかてるだけだが。
PHP本体に入ることはなくても、PSRみたいな感じでまとまっていくのかな。
0176nobodyさん垢版2014/10/28(火) 11:44:12.55ID:???
Eloquent が気に入った
whereHas() が where (select count(*) ...) >= 1 みたいなうんこSQLになるけど
この辺りは今後に期待してる
0177nobodyさん垢版2014/10/28(火) 20:51:40.49ID:???
>>172
ありがとうコントローラーでまとめてやってみるわー。
1ページにまとまってるサンプル見ると、一覧性があるというけど、
そのぶんごちゃごちゃで内容把握しにくいよね。
作った本人は完全に理解してるから気にならないだろうけども。
0178nobodyさん垢版2014/10/29(水) 21:19:46.09ID:???
ふー。
やっとログイン機構と、メールでの登録確認まで出来た…。

あとはユーザーページと、投稿画面、一覧表示だな。
先は長いぜ…。
0179nobodyさん垢版2014/10/31(金) 14:25:20.52ID:???
投稿画面、確認画面、データベースへの書き込みまでオワター。
データベースの連動と、ログインしている場合と、してない場合の振り分けがメンドイ…。
匿名ユーザーの投稿とか実装するとメンドイのね。

みんなはデザイン抜きで、ブログシステムを作ったりするのにどれくらい時間がかかるものなの?
0180nobodyさん垢版2014/11/01(土) 08:51:55.82ID:???
htdocsの下に、testフォルダを作成し、そこにLaravelをインストールしました。

で、ブラウザで、http://localhost/test にアクセスしましたが何も表示されません。

http://localhost/test/public とすると表示されます。


http://localhost/test で表示できるようにするには、どうしたらよいのでしょうか?
設定不足? 日本語マニュアルには記載がないようですけど・・・
0181nobodyさん垢版2014/11/01(土) 11:09:38.83ID:???
app/config/app.php設定した?
0182nobodyさん垢版2014/11/01(土) 12:30:49.79ID:???
Webサーバ側の設定だと思うんだけど、Laravelだけで何とかできるんか?
0183nobodyさん垢版2014/11/01(土) 12:39:56.72ID:???
ん?public_html/test/public みたいになってんのコレ?
0184nobodyさん垢版2014/11/01(土) 23:22:55.62ID:???
Laravelの入門書の出版予定ってある?
0185nobodyさん垢版2014/11/02(日) 10:19:07.05ID:???
なんか既に何冊も出てなかったっけ?
0186nobodyさん垢版2014/11/02(日) 11:03:14.37ID:???
電子書籍がたくさん出てる
0188nobodyさん垢版2014/11/02(日) 22:59:30.64ID:???
なんで電子書籍なんだよー
0189nobodyさん垢版2014/11/03(月) 01:53:00.36ID:???
確かにハウツー本って普通立てかけたり、
テーブルに置いたりして見ながら進めるから、電子書籍だとすげー使いにくいよな。
アイパットとかあるならいいが。

辞書みたいにプロパティ全部網羅とかなると、今度は検索使えるから電子書籍が断然有利だけど。
0190nobodyさん垢版2014/11/03(月) 19:14:31.01ID:???
同感!

リファレンスなら電子書籍のメリットがあるけど。
入門書は絶対に紙の本がいい。
電子書籍じゃ使いにくいし、読んでも頭に残らない。

CakeやFuel並の書籍は出ないかな・・・
0191nobodyさん垢版2014/11/04(火) 15:42:50.75ID:???
これ、ルーティングって内部的には何をしてんだろ?
単純にApacheのRewriteみたいなことしてるだけかな?
0192nobodyさん垢版2014/11/04(火) 21:09:40.70ID:???
なんと答えていいやら。
0193nobodyさん垢版2014/11/05(水) 16:38:17.98ID:???
ふー。タグ一覧の実装がやっとこできた。
データベースの設計から考えないといけないから大変だ。

って言っても、ネット上の情報探して真似するだけだけどw
0195nobodyさん垢版2014/11/06(木) 12:23:41.05ID:???
これルーティングって上から順番に評価されるって普通なの?

サブディレクトリ作るのにroutes.phpでグループ化して

/
/hoge

だとエラーで

/hoge
/

の順番に記述すると正常にできるんだけど…。
0197nobodyさん垢版2014/11/06(木) 21:27:09.00ID:???
上から順に実行って普通やんか
0198nobodyさん垢版2014/11/06(木) 21:28:44.01ID:???
最長一致になって欲しい気持ちも判るが
パフォーマンスを考えたら我慢できるレベル
0199nobodyさん垢版2014/11/06(木) 22:01:44.70ID:???
あ、そうなんだ普通なんだ。

いやさ、

/
/hoge/tag
/hoge/category
/user
/user/{id}

みたいな感じで書きたいじゃん。
単純に見やすいし。

それにしてもEloquentってこれ、便利なんかな?
やっぱり覚えたほうがいいの?

「美しくシンプルなアクティブレコードによるデーター操作の実装です。」って言われても、
そのシンプルに書くためにモデル作って、書式覚えて、1度書いたSQL文を変換してってなると、
なんか余計な手間のほうが増えてる気がするんだが…。
っていうか、サブクエリの方法がわからん…。
そしてEloquentってそもそもなんて発音するんだよw
0200nobodyさん垢版2014/11/06(木) 22:21:55.34ID:???
アクティブレコードやORMってのはオブジェクト(or モデル or エンティティ)が先に存在して
それを永続化する際に保存先のRDBとインピーダンスミスマッチを起こすからその面倒を引き受けてやるよって話であって
逆にRDBやSQLありきの単なるラッパと思ってるならそりゃあ存在意義もわからんだろ

ほとんど作らないだろうがオブジェクトをDBに永続化する必要のないアプリケーションだってあるわけよ
0201nobodyさん垢版2014/11/07(金) 11:56:06.03ID:???
なんだー、Eloquentでサブクエリはネストするだけか。
何時間も使っちまった。

$results = Post::whereIn(
'id',
Postmeta::where('meta_value', $tag)->lists('post_id')
)->paginate(2);

絶対需要多いと思うだけど、なんで解説に書いといてくれないんだろ。

しかしインピーダンスミスマッチなんて言葉初めて聞いたわw
SQLでデータ取ると加工が面倒だけど、そのへんの面倒を見てくれてるってわけね。
0202nobodyさん垢版2014/11/07(金) 12:34:00.42ID:???
オブジェクトを単に入れ物に出し入れするがごとく
DBへの透過的な永続性をORMに担ってもらうことで
プログラマはオブジェクト指向プログラミングに集中できる

俺も経験あるがORM使う以前ってRDBの奴隷として調教されすぎているんだよな
ORMなんてSQLも使えねえゆとり用じゃねーかwwwと馬鹿にするやつもいる
もちろんライブラリが自動でやる分パフォーマンスの問題が出ることはあるから
SQLやRDBの知識が要らなくなるというわけではないんだがな


暇があったら他のORMも調べてみるといい
Symfony2のDoctrineの説明はわかりやすい
http://docs.symfony.gr.jp/symfony2/book/doctrine.html
0203nobodyさん垢版2014/11/07(金) 18:46:54.89ID:???
5.0もう翻訳できとるやん。
神かな?
0204nobodyさん垢版2014/11/07(金) 18:57:34.58ID:???
Laravelに限ったことではないのですが・・・
Webの一覧画面、登録画面、修正画面、削除画面の遷移方法について質問です。

各々の画面遷移をPOSTでやるのかGETでやるのか、常套的な方法がありましたら
教えてください。
またエラーメッセージの画面間の引き渡しはフラッシュデータを使うのが常套手段なの
でしょうか。
0205nobodyさん垢版2014/11/07(金) 20:33:41.43ID:???
HTTPメソッドは冪等性と安全性によって使い分けるのが一般的
冪等というのは同じ操作を何回行っても結果が同じということ
安全というのはサーバ上のリソース(大抵DBと対応)の状態を変化させないこと

・冪等 かつ 安全         GET HEAD
・冪等 かつ 安全でない     PUT DELETE
・冪等でない かつ 安全でない POST

・POST→リソース新規作成
・GET→リソース取得
・PUT→リソース更新
・DELETE→リソース削除
という風にCRUDと対応付ける実装が多くLaravelの標準も同じ
※PUTとDELETEはHTMLのformが対応していないので隠しパラメータで擬似的に表現される

Laravelが用意しているリソースコントローラーのアクションの命名規則とHTTPメソッドの使い分けが参考になるだろ
実際にリソースを新規作成したり更新するリクエストはPOSTや(擬似)PUTだが
それらのリクエストを発するための新規作成画面(createアクション)や編集画面(editアクション)を表示するのはGETだな
http://laravel4.kore1server.com/docs/controllers#resource-controllers

リダイレクト云々についてはGeneratorのControllerのScafolding見てみたら?
https://github.com/JeffreyWay/Laravel-4-Generators
0206nobodyさん垢版2014/11/07(金) 20:46:00.90ID:???
postで画面描画しないよう徹したほうがよいよ

postメソッドは、エラー時もOK時もredirecrして必ずgetメソッドで画面描画

withInput()とwithError()が効率的に使えるし
ブラウザの戻るボタンで戻れるウィザードにもなるから

テンプレートにflashメッセージとflashエラーの描画入れとくと、いれいろ便利
0207nobodyさん垢版2014/11/08(土) 08:16:19.80ID:???
>>205、206
すばらしい回答ありがとうございました。
両回答とも、知りたい事のドンピシャの回答で、よくわかり、大いに納得しました。


ご回答をふまえて追加で質問させてください。

修正画面を表示
   ↓
OKボタンが押される
   ↓
バリデーションエラーで修正画面を再表示


という画面遷移を考えたとき、修正画面に表示するレコードのID等を引き回す必要が出てくると思います。
このIDの引き回しは、<input type="hidden"> で引き回すのが普通なのでしょうか?
(つまり修正画面に、<input type="hidden"> を入れる)

それとももっとスマート?な方法があるのでしょうか?
0208nobodyさん垢版2014/11/08(土) 09:18:56.48ID:???
レコードのIDの値はURLに含めるほうが楽じゃない?
リソースフルコントローラーの規則に合わせるなら

修正画面(edit): GET /resource_name/{id}/edit
更新(update):  PUT /resource_name/{id}

としておく まあIDに限らずユニークなフィールドでレコードを特定できるならなんでもいいんだけど

修正画面のformからPUTしてupdateアクションでバリデーションが通らなかったら
withInput()とwithErrors()を利用してeditアクションにユーザの入力値やエラーを渡しつつリダイレクトする
editアクションではInput::old()が空じゃなければそちらの値を優先して表示

探してみたらベストプラクティスの考察記事もあったよ
http://qiita.com/asaokamei/items/e5070f9fad4c91e52bdc
0209201垢版2014/11/08(土) 12:02:58.64ID:???
>>202
ありがとう。まずはEloquent理解してからだわw

しかし今まで作ったやつEloquentに書き換えてるけど、
実際使ってみると確かに楽だわ。
クエリースコープ便利すぎワロリンコ
0210207垢版2014/11/08(土) 18:49:26.00ID:???
>>208

>レコードのIDの値はURLに含めるほうが楽じゃない?

こうすると、修正画面に遷移する前の画面(つまり一覧表示画面)で、修正するレコードがどれかを
判別し、そのIDをURLに入れてsubmitする、という javascript が必要になります。
修正画面にはPOSTで遷移すればjavascriptを書く必要がないのでシンプルで良いと思った次第です。

しかし、紹介していただいたベストプラクティスを見ると、バリデーションエラーになって元画面を表示
するのに、
  return Redirect::back();
という方法を採っています。
この方法、シンプルですね。
やはり修正画面の表示はGETに統一し、上で書いた javascript は必要、と考えたほうがよい気がしました。
0211210垢版2014/11/08(土) 18:54:17.79ID:???
すみません訂正です。

FORMをGETでsubmitしたことがないので間違ったことを書いたかも。
GETでも javascript は必要ないですね。
0212nobodyさん垢版2014/11/08(土) 19:29:51.91ID:???
普通にaタグでリンク辿ればGETになるだろ何言ってんだ
0213nobodyさん垢版2014/11/08(土) 22:17:22.56ID:???
Aタグ!?
そう言えばそうですね。
チェックボックスをチェックして修正ボタンをクリック、ばかり考えていましたので。

ただ、修正画面ではなく、複数選択して次の画面に遷移する画面もあると思います。
そんな時はやはりAタグではなくチェックボックスだと思います。
すると、FORMでGETメソッドですよね。

あ、GETではパラメタサイズが制限されるから、チェックボックスで複数選択のときはPOSTなのかな。
0214nobodyさん垢版2014/11/09(日) 09:46:44.91ID:???
後付で条件変えられても……
最近のGETパラメータのサイズの制限はそんなに厳しくないと思うけど
0215201垢版2014/11/09(日) 12:01:02.03ID:???
同一IPによる連投禁止って、データベースにIPと作成日を保存しておいて、
バリデーションのカスタムフィルタ作ってValidator::makeするって感じしかないのかな?

そういった普通に使いそうな便利ツールまとめたライブラリとか無いのかな?
0216201垢版2014/11/09(日) 12:07:08.95ID:???
ごめん、普通にCookieでやればいいのか。
新しいこと頭に入れすぎて混乱しとるわw
失礼しやした
0217213垢版2014/11/09(日) 12:23:37.75ID:???
>>214
後付条件になってしまい、すみませんでした。

204の質問に対して205, 206の回答をいただき、
DBに保存しない処理は「GETで統一がいい」と納得しました。
しかし、画面によっては複数のチェックボックスにチェックして「修正する」ボタンを
押すような画面もあることに気づき、その結果、後付条件になってしまいました。

ご勘弁ください。
0218nobodyさん垢版2014/11/09(日) 12:26:11.16ID:???
>>215
同一IPによる連投禁止は、プロキシを介してリクエストしてきたとき
実際に端末は違っていたとしても同一IPになってしまうよ。
0219201垢版2014/11/09(日) 12:53:46.05ID:???
>>218
ですよね。
っていうかCookieでも毎回消されたら意味ないけどw

まあ、ただの投票ボタン付けるだけだから
厳密に規制したいわけじゃないからいいんだけどね。
0220201垢版2014/11/09(日) 18:58:18.75ID:???
ふーい、やっとこコメントへの投票とCookieによる連投規制でけた。
カスタムバリデーションへ複数のパラメータを渡すにはカンマ区切りな。
いい子はテストにでるから忘れるなよ。

'meta_key' => 'custom_validation:parameter1,parameter2'

いちいちマニュアルになくて試しながらだからくっそ時間かかるわー
0221nobodyさん垢版2014/11/10(月) 19:45:29.55ID:???
マニュアルになくて試しながら、だよな。

俺もメールで戸惑った。
簡単なメール送信でさえ、わからなくて悩んだよ。
0222nobodyさん垢版2014/11/11(火) 15:14:47.41ID:???
今日はカスタムコマンドを使って
cornでキャッシュ作成と、データベースの更新とメンテまでできた。

カスタムコマンドは引数使わない場合はモードを
InputArgument::REQUIREDではなくてInputArgument::OPTIONALな。
これもテスト出るぞ。
0224nobodyさん垢版2014/11/11(火) 18:58:32.81ID:???
本屋に行ってきたんだが
Fuel > Cake >> zend みたいな感じで陳列されてた。
LaravelってCakeぐらいは越えられる?
0225nobodyさん垢版2014/11/11(火) 19:09:16.88ID:???
Laravelが人気ありそうなので学習しはじめましたが、人気がある理由がわかりません。

FuelPHPやYiiのほうが、オンラインマニュアルの質が格段に高い。
ふつうのWebサービスを作るにはFuelPHPやYiiで十分だろうし、学習コストを考えると、
FuelPHPなどのほうがよさそうに思いました。
仕事で使うには、学習コストって重要ですよね。

世界的に見てFuelPHPよりLaravelがトレンドのようですが、Laraveが優っている
理由はなんなんでしょうか?
単に宣伝が上手かっただけとか?
0226nobodyさん垢版2014/11/11(火) 19:21:22.10ID:???
Laravelを触ってみて FuelやYiiのがいいと思うのは 君の知性に問題があるとしか言いようがないよ
0227nobodyさん垢版2014/11/11(火) 19:46:30.78ID:???
Laraveが優っている理由を具体的に教えてください。
0228nobodyさん垢版2014/11/11(火) 20:01:15.63ID:???
11月11日午前8時頃、バージョン4のCSRFフィルターに関する脆弱性が公表されました。
フィルター中の比較演算子を!==に変更してください。
http://laravel4.kore1server.com/docs
0229nobodyさん垢版2014/11/11(火) 20:17:11.34ID:???
確かにマニュアルは分かりにくい。
昔のマニュアルにあったのが、新しいマニュアルで削除されたりしてる謎。
変なとこだけ冗長だったり、肝心のところがなかったりする。

ただ、実際書いてみると「なるほどね」って機能が多いよ。

実用的なチュートリアルも無いし、日本ではまだまだこれからって感じだね。

とにかく手を動かして、ダメなときは海外のフォーラム覗いて、
既に公開されてるソースを眺める。
今のところこれしかない。
0230nobodyさん垢版2014/11/12(水) 11:32:04.66ID:???
> 実用的なチュートリアル

絶対ここの常駐者だな...

ttp://www.rapidexp.com/wordpress/category/laravel/

てか、まだ現役だってことにビックしたw
0231nobodyさん垢版2014/11/12(水) 19:27:25.35ID:???
>>230
誰それ?初めて見たが…。
一応迷惑かかるとあれだから否定しとくわ。

てかさ、サイドバーを付けたいんだけど、
これってメインのコンテンツ表示してるコントローラーでサイドバーについてもデータ渡すの?
せっかくbladeのViewでインクルードしてんのに、意味なくね?

sidebar.blade.php側でコントローラーのデータ読み込んだりできないのかしら?
0232nobodyさん垢版2014/11/12(水) 20:00:30.91ID:???
>>231
blade側でやるのは、メニューデータのforeach展開だけ

メニューデータ取得は、全コントローラーで継承するベースコントローラーでしょ

>誰
うん、DOSやパソ通しらなきゃどうでもいい
0233nobodyさん垢版2014/11/12(水) 20:32:17.90ID:???
>>232
なるほど、こういうときにベースコントローラー使うのか。
何のために継承してんだかわからずおまじないとして書いてたけど、そういうことね。
ありがとう。
0234nobodyさん垢版2014/11/12(水) 21:26:07.80ID:???
ビューコンポーサー派はおらんのかえ
0235nobodyさん垢版2014/11/13(木) 10:39:51.71ID:???
ビューコンポーサー試してみたけど、利点がわからんな…。
特定のビューが呼び出されると一緒にレンダリングされるってだけでしょ。

デフォルトでroutes.phpに書くって意味もわからんし、
逆にどこに書いても良いって言われても置く場所困るわ。
分けたところで作った人しか場所がわからず見通しが異常に悪くなるし…。

っていうか、デフォルトでroutes.phpに書くってマニュアルに無いのはなんでなんだ?
ホント歯抜けの多いマニュアルだよなこれ。
0236nobodyさん垢版2014/11/13(木) 20:27:25.45ID:???
ふーい、なんとかサイドバーも終わった。
あとはユーザーページと
ログインユーザーとゲストの表示の調整だけだ。

これでやっとコーディングやらデザインに入れる…。
0237nobodyさん垢版2014/11/14(金) 06:15:40.60ID:???
バリデーションエラーになって、元画面を再表示するとき、
POSTされた入力値を再表示画面にセットしたいと思っています。

テキストボックスに再表示する方法は old() でできますが、
リストボックス、チェックボックス、ラジオボタン のセットは
どのように行ったらよいのでしょうか?
0238nobodyさん垢版2014/11/14(金) 07:49:01.47ID:???
>>237
->withError()するだけじゃん
getで初期値いれとくだけで何も考える必要ない

>>230 のリンクみてる?
0240nobodyさん垢版2014/11/14(金) 18:13:33.59ID:???
「Laravel 4 Cookbook 日本語版」って70%で止まってるけど、もう翻訳されないんだろうか?
最初に買った「Laravel4でこなすプログラム術 Getting Stuff Done」 はとても良かったんだけど
DB系の機能に一切触れてなかったから次はCookbook買おうと思ったんだけど翻訳止まってるんだよね…
「Code Bright」はマニュアル程度の内容だったし…
0241nobodyさん垢版2014/11/14(金) 21:31:02.96ID:???
Code Bright のP28

  Composer ガオーとロードできるように・・・

なんだよコレ。。。
日本語なのに翻訳が必要じゃねーか。



ところで入門書としてのお勧め書籍を教えて!
0243nobodyさん垢版2014/11/14(金) 23:45:36.37ID:???
入門書なぞない。
マニュアルと、海外gitとかでいろいろアップされてるからコード見て勉強だ
0244nobodyさん垢版2014/11/15(土) 11:15:02.56ID:???
laravel関係ないけどさ、コントローラー名やらメソッド名とかって
ガンガン長くなちゃうんだけど、どうしたら良いの?

意味はわかるように出来るだけ短くとか、ドヤ顔で解説してるところあるけど、
それができたらわざわざ質問しねーよとw

ハイフンで区切ったり、アンダーバーで区切ったり、大文字にしたりあるけど、
なんかフレームワークによってバラバラだし、好きにしていいよってことなんかな?
0245nobodyさん垢版2014/11/15(土) 16:28:25.12ID:???
20文字以内なら許容範囲と思うかなー
昔のハンガリアン記法チックな名付けしたりして 辺な短縮するよりわかり易いほうがいい。
エディタの補完機能あればタイプミスはまぁ発生しないし。
20文字超えだすと一行内に収まらないコード続出で可読性が正直落ちる…
0246nobodyさん垢版2014/11/15(土) 17:22:50.62ID:???
「Controller」だけで11文字もあるんじゃん。

長くても、後で意味が分かるほうがいいと思うけど。
0247nobodyさん垢版2014/11/15(土) 17:39:13.66ID:???
testとかめちゃくちゃ長くなるよね。
0248nobodyさん垢版2014/11/15(土) 19:59:50.29ID:???
20文字は厳しな。
いま見てみたら25文字のファイルあった。

まあ長くてもわかるほうがいいか。どうせ自分で使うんだし。

あと面倒だとint、str、val、key、arr、とかつけるけど、
あとで見ると何だったかわからなくなる罠w
こういうのって、なんかルールほしいよね。
0249nobodyさん垢版2014/11/15(土) 22:50:57.36ID:vEAdgPxd
ここもなんだかんだで伸びが早くなってきてるな。
そろそろ日本でも本格的に広まってほしい
0250nobodyさん垢版2014/11/16(日) 01:16:53.95ID:???
いやーしかし覚えないといけないこと多いね。
リンク生成するだけでも一苦労だわ。
別に普通に相対URL書いてもいいけど、それだと負けた気がする不思議。
そして恐らく関数使ったほうが遅いというパラドックス…
0251nobodyさん垢版2014/11/16(日) 08:24:28.64ID:???
>>250
同意。

しかも、http://からの絶対URLだと、Webサーバの前段にロードバランサなど入れてあると
ダメだったりする。

相対URLのほうが良いと思うなあ。
相対URLを取得する関数はないのかな?
0252nobodyさん垢版2014/11/16(日) 09:02:39.44ID:???
"{{url()}}/admin/hoge" じゃだめなん?
0253nobodyさん垢版2014/11/16(日) 10:38:46.70ID:???
だめ、正しくは
{{link_to('admin/hoge', 'ほげに移動')}}

理由はなんか負けた気がするからw
0254nobodyさん垢版2014/11/16(日) 11:18:33.31ID:???
アプリの中なら、URL::to()とかHTML::LinkRoute()とかを使う。
これらを&#22169;ますだけで「遅い」とかぬかすなら、端からFWなんか使うな。
0255nobodyさん垢版2014/11/16(日) 15:14:19.27ID:???
>>254
端からFWなんか使うな、なんていう前に、
URL::to()を使うメリットを語ったらどうかな。

それとも貴方は道具に弄ばれてる馬鹿ですか?
0256nobodyさん垢版2014/11/16(日) 15:32:42.83ID:???
CodeIgniterからのスキルの引っ越し先としてLaravelに的を絞って学習を進めてきた。
結果、あまり良さを見せなかった。。。


良いと思ったのは、Routerの機能、Bladeの簡潔さ、withInput()、withErros、old()、くらい。
Queueも良いと思ったが、自分で作ればいいやと。

特に自分の場合、過去の資産の関係からテンプレートをBladeではなくSmartyに
したいため、Blade依存のwithErros、old()などは意味がなくなってしまう。

また、V3からV4で仕様がかなり変わったようだし、V5でも仕様が変わるらしいので、
長期に亘り安定的に使うのはダメだな、という印象です。

LaravelはGoogleトレンドでは高ポイントだが、それを鵜呑みにしちゃダメでした。
日本語マニュアルもダメだし、業務に採用はできないな、と思いました。
0257nobodyさん垢版2014/11/16(日) 15:37:00.44ID:???
>Blade依存のwithErros、old()などは意味がなくなってしまう。
???
0258nobodyさん垢版2014/11/16(日) 15:38:21.56ID:???
>>255
リンク全てをハードコーディング。。。
アホですか。
0259nobodyさん垢版2014/11/16(日) 15:43:34.93ID:???
ローカルでテストしないん?
0260nobodyさん垢版2014/11/16(日) 16:03:02.00ID:???
>>251
ロードバランサやWebサーバの設定でなんとかなるでしょ
担当範囲外でいじれないって話ならご愁傷様
0261nobodyさん垢版2014/11/16(日) 16:08:31.80ID:???
アプリのrootをDocumentRootにしとかないと、嵌ることがあるな。
ドキュメントに明確に書いてはいなかった気がするし、絶対に動かないわけではないので、余計に厄介。
0262nobodyさん垢版2014/11/16(日) 16:09:11.55ID:???
公式ドキュメントはそもそも方針として網羅性を重視していないんじゃないの?
歯抜けと言われればそうだね〜としか

ドキュメントの充実度を評価の基準の1つにするならYiiなんてどうよ?
最近出た2の翻訳はまだだけど概念の説明から細かいところまでかなり揃ってる印象
0263nobodyさん垢版2014/11/16(日) 16:09:27.83ID:???
間違えた。アプリのrootじゃなくて、publicね。
0264nobodyさん垢版2014/11/16(日) 16:14:25.31ID:???
それまで何を使ってきたかでLaravelの評価わかれるみたいねー
俺みたいに Rails使ってきた人には高評価
偽RailsなCakeのクソさに苦しめられてきた、やっとホンモノのRailsライクなフレームワークが来た!みたいな感じで。
逆にFuelみたいな軽量系や、CodeIgniter みたいに小さな部品を組み合わせて作る系のフレームワーク使ってた人は
微妙って感じの人が多い
0265nobodyさん垢版2014/11/16(日) 16:24:57.02ID:???
>>261, 263
このスレだけでも困ってる奴2人はいたな
大抵のフレームワークにエントリーポイントとなる1つのファイルがあるってわかってりゃ
publicがDocumentRootかどうかって些細な話だと思うけど
PHP初級者がFWデビューしてハマったら辛いだろうな
DocumentRootがいじれない共用サーバへの設置とか
0266nobodyさん垢版2014/11/16(日) 18:29:28.01ID:???
>>262
Yii のマニュアルは、かなりイイ! と俺も思うよ。
0267nobodyさん垢版2014/11/16(日) 20:12:58.56ID:z2oZHTF6
codebrightの翻訳版誤字多すぎじゃない?
訂正の要望出したら直してくれるかな
0268nobodyさん垢版2014/11/16(日) 20:13:44.53ID:???
>>264
>偽RailsなCakeのクソさに苦しめられてきた、やっとホンモノのRailsライクなフレームワークが来た!みたいな感じで。
わかる 最近は苦しみ通り越してダメな子ほど可愛い的な感覚すらある
CakePHP3がもう1年早ければ使い続ける選択肢もあったかな
0269nobodyさん垢版2014/11/17(月) 20:17:21.50ID:???
ふーい。やっと今日でシステム周りが全部できた…。
1から全部作るのに1ヶ月以上もかかっちまった。もちろん片手間にだけども。

マニュアル読む

コード書いてみる

マニュアルにない

海外の情報調べる

自分でまとめ直してコード書く

こうしたプロセスをほぼすべての段階で踏んだわw
0270nobodyさん垢版2014/11/17(月) 21:57:02.73ID:???
しかし全文検索の実装がくっそ簡単でびっくりした。

ルートで検索結果ページ作って、
ビューでブレード使って検索ワード渡して、
検索するテーブルのモデル作って、
コントローラーでエロクアント使って検索してまたビューに渡して、
またブレードで表示整えると…できあがり。

おまじない抜かしたら、実質10行くらいで書けるもんね。
0271nobodyさん垢版2014/11/20(木) 18:21:57.65ID:???
Laravel5って今月ホントにリリースされるの?
0272nobodyさん垢版2014/11/21(金) 18:58:55.71ID:???
カスタムでクラスとかメソッド作るときに一覧が無いから
バッティングしてめちゃくちゃ時間無駄にした。
最低でもエラーメッセージで「バッティングして作成できません」って表示されればいいが、
hoge model not found…。

まあ作り方も当たり前のように本家のマニュアルに無いという徹底ぶり。
こりゃ早い時点でちゃんとしたドキュメント作れば売れるでw
0273nobodyさん垢版2014/11/21(金) 19:02:32.42ID:???
なにいってんだ APIリストあるだろ
0274nobodyさん垢版2014/11/21(金) 19:42:44.00ID:???
お、ほんまやあった。
でもくっそ見にくいな…。

しっかしこの30点くらいのマニュアルはまじでないわ。
痒いところに全然手が届かん。
やりたいことができて見ても全く解決しないから
最初からググるようになってきたわw
0275nobodyさん垢版2014/11/21(金) 21:18:47.53ID:???
Laravelのあのマニュアルが網羅性は重視してないのは確かだな
あれだけ見ても分からないことが多すぎた
どっちかというとクイックスタート的な感じ
そう考えると手につけやすく分かりやすい部類なのかもと感じる
アレとAPIリストの中間にある逆引き的なのがあればとは思う
レシピ集はどっかにあったけど数が少なすぎ
0276nobodyさん垢版2014/11/21(金) 21:50:51.68ID:???
>どっちかというとクイックスタート的

クイックスタートにもなってないと思う。
ほんとマニュアルがクソだと思うよLaravel。


マニュアルも成果物の重要要素なのに。
残念。
0277nobodyさん垢版2014/11/21(金) 22:21:32.48ID:???
あれでわからないなら無理じゃない?

マニュアルで不明な引数はソースみれば判明する
0279nobodyさん垢版2014/11/22(土) 00:10:24.20ID:???
リファレンス作ってる傍から、陳腐化していくからw
0280nobodyさん垢版2014/11/22(土) 01:41:39.62ID:???
Laravel recipes も見なきゃいかんよ
0281nobodyさん垢版2014/11/22(土) 02:15:39.41ID:???
困ったときはソース見て大体何とかなるから良いよな。
マニュアルは英語だからよくわからんしw
0282nobodyさん垢版2014/11/22(土) 11:11:27.08ID:???
バリデーションのactive_url正しく動作しないじゃん。
checkdnsrrでDNSのチェックしてるだけかこれ。

っていうかDNSで名前解決しないサイトって何なんだ?
CDNかなんかでも噛ませてんのかな?
0283nobodyさん垢版2014/11/24(月) 20:06:02.69ID:2ZXXtFiK
フォーム作るときlaravelのメソッド使う?
それとも普通にhtml使う?どっちがいいとかあるのかな
0284nobodyさん垢版2014/11/24(月) 22:32:27.29ID:???
管理画面ならメソッド、ユーザー画面ならhtml
あとはデザイナーにませるから

素のhtmlでもwithInput()あるから制御できるし
0285nobodyさん垢版2014/11/25(火) 18:46:44.27ID:???
一部の機能(formのhiddenとか)だけlaravelのメソッドを使うソースとか見たことあるな。
0286nobodyさん垢版2014/11/29(土) 12:53:42.96ID:???
用意された関数はひたすら使う。
これがプロのフレームワーカー
0287nobodyさん垢版2014/12/01(月) 20:59:13.93ID:???
エロクアントって、どこにアクセントがくるの?
0288nobodyさん垢版2014/12/04(木) 14:04:08.85ID:???
ららべるをメインに扱うようになった会社増えたね。
どうやら日本でも定着しそうだ。
海外のトレンドが日本でも定着するスピードが早くなった気がする。

ただしPython、お前は別だ!
0289nobodyさん垢版2014/12/04(木) 19:54:30.97ID:???
>>ららべるをメインに扱うようになった会社増えたね。

ソースは?
0290nobodyさん垢版2014/12/05(金) 00:23:21.24ID:???
いや、個人的に周りの会社がってことだけどw
新規案件から指定がなければララベルってとこ増えとる
0291名無しさん@そうだ選挙に行こう垢版2014/12/13(土) 20:55:42.88ID:???
これ別に、特筆して他のフレームワークより使いやすいってこともないね。
フォーム関連は便利かなってくらい。

まあ元々フレームワーク使う人は自分で何でも作るだろうから、
導入とアップデートが楽ってのが一番のポイントなのかな?
0293nobodyさん垢版2014/12/16(火) 18:48:12.47ID:???
データベースのクエリはCache::putできねーのか。

「キャッシュにアイテムを保存するのは、実に簡単です」とか余計なこと書く前に、
こういうことも書いといてほしいな。
それかエラーメッセージでそれとわかるように表示してほしいわ。

実用的なまとめ本の出版が待たれる。
0294nobodyさん垢版2015/01/03(土) 16:17:38.33ID:???
情報少ないって声が多いからブログに解説書こうかとも思うけど、
5.0で豪快に変わりそうだから書く気起こらんなw

4系って、結局どれくらいの期間もったの?
0295nobodyさん垢版2015/01/05(月) 13:19:43.43ID:???
Laravel4.2 始めたばかりです。
テーブルのupdateしようとしたらupdated_atがないとエラーが出たので
public $timestamps = false; をモデルに書けば怒られないとのこと。
それでも怒られました、updated_atを追加して動きましたが今後は追加したくない。
キャッシュか何か残ってるのでしょうか。
0296nobodyさん垢版2015/01/05(月) 20:41:48.93ID:???
エロクアントで書き込むときはupdated_atと更新用のテーブル(名前ぐぐるのめんどいw)は
必須でっせ。

自動で更新日と作成日が追加される。
rowとかでSQL書けば必要ない。
0297nobodyさん垢版2015/01/07(水) 00:06:16.35ID:???
モデルじゃなくてmigrationファイルじゃなかったっけ?
0298nobodyさん垢版2015/01/07(水) 22:29:04.55ID:???
なんでlaravel.jpとlaravel.tokyoがあるんですか?
0299nobodyさん垢版2015/01/08(木) 19:24:00.30ID:???
新しい解説サイト(個人的にすげー見にくい)や、レシピサイトもあるやで。
あと青っぽい解説サイトもある。

全部バラバラの謎。
0300nobodyさん垢版2015/01/08(木) 20:12:17.98ID:BWcux7KG
知らんうちにフォーラムが.tokyoのほうにあるみたいだけど
開設当初.jpのサブドメインじゃなかったっけ?

わざわざ分裂させて何がしたいの?
せっかく流行ってきたのに銭の臭いがしていやんな感じですわ
0301nobodyさん垢版2015/01/08(木) 23:35:20.11ID:???
銭なんて大して稼げんやろ。
WordPressとかならまだしも、フレームワークじゃ。

たぶん海外のこの仕組欲しいな。あのサイトに作ってくれないかな。
まあ頼むくらいなら自分で作れるからさくっと作ろう。

って感じのエンジニア特有のコミュ症が発症した結果だと思う。
0302nobodyさん垢版2015/01/09(金) 04:01:26.76ID:???
tokyoの方初めて知ったよ
問答無用でSE鳴らしたり:hoverでリンクの文字サイズ変えるとか何時の時代だよ
公式じゃなきゃLaravelのアイコン外して欲しい
0303nobodyさん垢版2015/01/09(金) 12:22:38.64ID:???
>>302
わかるwいきなり音なってびっくりした後に
「Laravelは最も洗練されたPHPフレームワークです。」 の文字見つけてイラッとしたw
0305nobodyさん垢版2015/01/12(月) 14:52:31.57ID:???
すいません質問なのですが、http://readouble.com/laravel/4/2/0/ja/quick.htmlの手順どおりに
php artisan migrateを実行すると下記のようなエラーがでてしまいます
[PDOException]
SQLSTATE[42000] [1044] Access denied for user ''@'localhost' to database 'f
orge'
環境が行けないのかと思いmampからhomesteadに変えたり試したのですがダメでした
エラーメッセージを見るにアクセスが拒否されたとのことなので、どこかで設定等しなければならないのでしょうか?
0306nobodyさん垢版2015/01/13(火) 08:49:52.50ID:???
テンプレートの画面出を変数に取得する方法がみつからない
0307nobodyさん垢版2015/01/13(火) 10:29:57.22ID:???
$output = View::make('xxx.yyy')->render();
とかじゃないのか?
0308nobodyさん垢版2015/01/16(金) 05:40:41.40ID:???
>>305
やや亀だけど
databaseの設定が間違ってるかも

app/config/database.phpのl設定を直すか、
手っ取りばやく試したいならdefaultをsqliteにすれば良いはず
0309nobodyさん垢版2015/01/16(金) 21:33:27.42ID:???
>>308
ありがとうございます
sqliteにしてみたら上手く行きました
0310nobodyさん垢版2015/01/21(水) 20:48:53.66ID:???
5来ないね
なんかごっそり変わるらしいけど、どうなんかね?
ちょこっと使いやすくするためだけに、それ以上の学習コストかかるようなアップデート無いことを祈る
0312nobodyさん垢版2015/01/24(土) 21:56:53.43ID:???
artisanを触っててふと思ったのですが「php artisan up」や「php artisan down」は
一体どこで設定を保持しているのでしょうか。
app/storage内を見てもそれらしきファイルが見当たらなかったので質問させていただきました。

Laravelのバージョンは4.2.16です。
0314nobodyさん垢版2015/01/25(日) 11:11:49.94ID:???
>>313
ありがとうございます。
ファイルの有無で判断しているのですね。 勉強になりました
0315nobodyさん垢版2015/02/02(月) 13:38:44.84ID:o4Pw8oBo
自分で作ったshapeってクラスのインスタンスをeloquentの製品モデルに持たせ、
製品モデルに座標値をsetしたらshapeのプロパティも変化し、
モデルの座標値をgetすればshapeの方から取ってくるようにしたい。
shapeを作るのはfillメソッドの中でやり、座標値の読み書きは
get[座標値名]AttributeとSet[座標値名]Attributeでやってるんだけど、どうにもうまくいかないのです。
てか、うまくいくんだけどモデルをsaveすると製品のテーブルでは座標値が全部0になっちゃう。
すごく苦しんでます。どなたかお知恵を!
0316nobodyさん垢版2015/02/02(月) 18:08:46.80ID:???
自己解決
どうもアクセサもしくはミューテータのあるアトリビュートは
toArrayの対象に含まれないようで
自前のtoArrayを作って追加したらおkですた
お騒がせスマソ
0317nobodyさん垢版2015/02/02(月) 19:11:01.47ID:???
自前のtoArrayも悪くないが attributesの対象を追加したり除いたりするメソッドがあった気がする
0318nobodyさん垢版2015/02/02(月) 19:49:17.39ID:???
$attributesに追加しちゃうと、対応するカラムが存在しない場合、save()とかエラーになる気がする
0319nobodyさん垢版2015/02/02(月) 21:38:17.00ID:???
>>318
今回はもともと対応するカラムが「ある」ケースなんですわ
そして普通にsaveするだけなら問題ない
でもtoArrayを通すと消えちゃうわけ

そういう意味ではこういう時ミューテータやアクセサを使うってのが
そもそも不適切なんだろうけど
特定アトリビュートが変化したとき副作用を起こさせる方法を
他に思いつかないんですわ
なんかいい方法あるかな?
0320319垢版2015/02/02(月) 21:50:17.56ID:???
今回はShapeクラスのオブジェクトを製品モデルのプロパティとして持たせたけど
Shapeをインターフェイスで書いて製品モデルに多重継承させるのが
きっとスジなんでしょうね
でもPHPのインターフェイスってなんか苦手でorz
0322319垢版2015/02/03(火) 00:35:19.74ID:???
>>321
そこにも書いてあるけどappendsは
対応するカラムが「ない」時に使うものなんだよね
今回はそうじゃないのでスジ違いかなと思いつつ試してもみたけど
ダメだったんですわ
しかしアクセサの書き方を間違ってたせいかもしれないので
また今度試してみますわ、ありがとう
0323nobodyさん垢版2015/02/03(火) 02:45:33.55ID:???
Eloquent::$attributes に座標を入れずに保存してたりしてね
0325nobodyさん垢版2015/02/09(月) 08:58:34.49ID:???
Single Table Inheritanceの機構を標準で持って欲しい
ほとんど必須だと思うんだけどなあ
0326nobodyさん垢版2015/02/09(月) 15:34:13.36ID:???
5出たけど、差分のドキュメントないからさっぱりわからんな。
動画は英語だし、テンポ遅くて見てらんないし。
まあまだ、これからかな。
0327nobodyさん垢版2015/02/09(月) 21:12:58.22ID:???
ハマりどころに関しての対応策とか、そういう情報もまだ少ないから様子見てる
0328nobodyさん垢版2015/02/09(月) 21:24:27.44ID:???
しかし4の情報は今後減っていくんだろうなあ
悩ましいところだ
0329nobodyさん垢版2015/02/09(月) 21:59:40.15ID:???
Laravel4.2からLaravel5に移行しています。

DBに関してなのですが、データベースを使用するときは use DB; をしないといけなくなったのでしょうか。
use DB; をしないと

Class 'App\Http\Controllers\hoge\DB' not found

と怒られてしまいます。
0330nobodyさん垢版2015/02/09(月) 22:50:20.40ID:???
>>329
そのファイルの先頭で、namespace App\Http\Controllers\hoge; って書いてあるからでしょ
\DB::xxx() と呼ぶか、use DB; するかかな
PHP自体の名前空間の勉強も必要かもね
0331nobodyさん垢版2015/02/10(火) 07:27:55.80ID:???
>>330
ありがとうございます。
名前空間に関しては調べてみます。
Laravel4.2の頃は余り意識せずに済んだので少し大変です。。
0332nobodyさん垢版2015/02/12(木) 00:09:13.50ID:???
Laravel4.2で動いてるのを5に移して動かしてみた
結構変わってるね、フォルダの把握とか名前空間とか(\DBのままでいいのかな)
一番ハマったのがAjax時のエラー、結果的にcsrf_token()を埋め込むだけなんだけど
Laravel初心者にはキツかった
0333nobodyさん垢版2015/02/12(木) 05:17:29.55ID:???
5になって、何が良くなったんですか?
スピード?
可読性?
機能UP?
0334nobodyさん垢版2015/02/12(木) 18:35:12.16ID:???
なんで差分ドキュメントないんだ?w
0335nobodyさん垢版2015/02/17(火) 16:07:57.42ID:???
差分ドキュメントってどういうの?
0337nobodyさん垢版2015/02/19(木) 08:51:22.88ID:???
CentOS6で動かしてる人います?
PHP5.4以上って意外とハードル高いと思うんだけど
みなさんどうしてるんだろう・・・
ちなみに俺はremiを使ってるんだけど
yumに自動アップデートさせてたら今日おかしくなってしまった
やはり非標準レポは怖いということか
それとも他に要因があるのか
はぁまじ()
0338337垢版2015/02/19(木) 12:01:18.73ID:???
自己解決
NetBeansのデバッグセッションを終了してなかったので
CLI含めてPHPからの出力が全てリダイレクトされてた
そうするとyum updateの対象にPHP関連が含まれてる場合
(というか多分更新にPHP自身の動作が必要な場合)
yumが無言で止まってしまうんですな
こんなことで凄い時間を使ってしまったorz
0339nobodyさん垢版2015/02/19(木) 22:46:13.64ID:???
5になってモデルをどこに置くか困る
0340nobodyさん垢版2015/02/19(木) 23:05:44.78ID:???
>>337
5.4の公式サポートも今年の9月で終わるのに大変だな(´・ω・`)
0341nobodyさん垢版2015/02/20(金) 00:04:49.39ID:???
remi で 5.4 使ってるってことは、
remi には remi-php55 と remi-php56 っていうレポジトリが別にあるの知らないのか
/etc/yum.repos.d/remi.repo.rpmnew 見れば設定が書いてあるだろうから、
/etc/yum.repos.d/remi.repo に必要なところをコピーすれば使える
0342nobodyさん垢版2015/02/20(金) 00:35:27.12ID:???
全部公式のパッケージ使うのなんて、むしろ稀でしょ。
導入時は一番最新のにしといて、あとはテコでもバージョンアップしないのがプロ。
0343nobodyさん垢版2015/02/20(金) 00:47:27.58ID:???
最近PHPのリリースサイクルも早いし
標準パッケージで最新版かその前のくらいに追い付けるディストロに乗り換えたい
0344337垢版2015/02/20(金) 06:19:04.20ID:???
>>341
php関連ライブラリ(具体的にはphp-seclib-*)の
アップデートも削除もできないようになっちゃったんだからどうしようもない
とパニクっちゃった次第ですわ
PHP5.4自体の削除はできても55や56を入れようとすると依存関係で跳ねられるわけわけ
原因がバージョン云々ではなくxdebugセッションの終了し忘れにあったことは前述の通り(お粗末)

まあ今回の案件の実稼働環境はイントラのwindowsサーバなので
直接関係ないんだけどね
そっちはそっちでXampp(php5.6)上のLaravel4だとApacheがコケる
という問題が出てたりする
環境依存っぽいしphp5.4のWampなら大丈夫だから
何とかなると踏んでるんだけど気になるっちゃーなる
0345nobodyさん垢版2015/02/21(土) 00:08:58.45ID:???
belongsToのリレーションを持つモデルをセッションに保存しておいて
それを取り出すと
ちゃんと正しいクラスのオブジェクトではあるのに
リレーションが取得できない状態になるんだな
$my_model = new MyModel(Session::get('my_model_name')->toArray());
等とすれば大丈夫

これ仕様なんだろうけどバグといえるレベルなんじゃないかと
ちなみに4.2
0346nobodyさん垢版2015/02/21(土) 01:28:48.87ID:???
リレーションが取得できない状態というのがよく分からん
0347nobodyさん垢版2015/02/21(土) 01:55:17.54ID:???
>>345
4.2で試したけど普通にリレーション取れたよ
ダメな状況がわからん
0348nobodyさん垢版2015/02/21(土) 03:03:33.50ID:???
名前じゃね?
4.1の頃の話だけど、モデル名にアンダーバーが使われてるリレーション貼ると取れなかったり
値をセットできなくなったりした
シンプルな post 1-N comments なら相互に取れるんだけど
post 1-N user_comments だと ダメになったりした
0349nobodyさん垢版2015/02/21(土) 06:49:59.51ID:???
>>347
モデルをテーブルには未セーブ、つまりIDがない状態でセッションに入れるとどう?
IDがないとhasOneはもちろん無理だけどbelongsToは可能
それがセッション通過後だとnullになっちゃう
>>349
名前か、確かにリレーションは複合語ばっかりだからあるかも
0350nobodyさん垢版2015/02/21(土) 09:32:53.33ID:???
Laravel5日本語マニュアルをローカルPC
にダウンロードしたいのですが、丸ごとダウンロードはできるのでしょうか?
0351nobodyさん垢版2015/02/21(土) 16:05:00.49ID:???
>>349
未保存でそのままセッションに入れて別ページで取ってみたけど、問題なくbelongsTo先は取れたよ。
アンダーバー有りは試してないからそれかもね。
0352nobodyさん垢版2015/02/21(土) 19:36:35.56ID:???
モデル名に複合語つかってると、前者と後者のモデルの区切りを識別できないのかね?
なんかおかしな挙動になったのは覚えてる
0353349垢版2015/02/21(土) 19:42:37.54ID:???
>>351
検証ありがとう。でも名前は関係無いようだ。そしてSessionも直接は無関係っぽい。
やっとちょっと整理できた気がするのでまとめます。長文容赦。

例としてUserとPhoneの関係。普通にPhone::userがbelongsTo('User')とします。
[ケース1]
$phone = new Phone();
$phone->user_id = 1;
$user = $phone->user;
return $user;

[ケース2]
$phone = new Phone();
$dummy = $phone->user;
$phone->user_id = 1;
$user = $phone->user;
return $user;

ケース1との違いは2行目が増えているだけ。もちろん$dummyにはnullが入ります。
で、結果はケース1だと普通に$userの内容が出力され、ケース2はnullが返ります。
つまり一度でも空っぽのリレーションを参照してしまうと、その後はキーの値を代入してもリレーションが作られない。
もちろん代入じゃなくてfillでも同じです。
fillや代入じゃなくてちゃんとassociateすれば大丈夫。
普通はfillの後saveして遷移するから、テーブルからの再取得時にリレーションができてめでたしとなるわけだけど、
セッションで引き継いでしまうとキーの代入やfillでは永久にリレーションができなくなってしまう。
結構イヤな挙動だと思いませんか?
0354nobodyさん垢版2015/02/21(土) 23:53:54.67ID:???
>>353
使い方が悪い

> When updating a belongsTo relationship, you may use the associate method.
0355nobodyさん垢版2015/02/22(日) 02:00:36.90ID:???
Laravelは(というかORMのEloquentは)
$phone->user とか未定義のプロパティにアクセスした際に走る __get, __set をオーバーロードして
Laravelのあの魔化不思議な動きを実装してる

具体的には、$phone->user とした時点で以下の動作が走る
プロパティ user の存在をチェック (PHPの動き)
- userプロパティが存在したら そのまま userプロパティの内容を戻す これはPHPの言語仕様でオーバーロードとかは一切できない
- userプロパティが存在しなかったら __get マジックメソッドが走る

で マジックメソッドはLaravel側でオーバーロードされていて 以下の処理をしている

- リレーションの有無をチェック
- リレーションが存在したら user_id の存在を確認する
- user_id も存在しなかったら userプロパティに null をセットした上で、そのnull を戻す
- user_id が存在して値が入っていたら select * from user where user_id = 1 が走った上で
  userプロパティには userオブジェクトが格納し、その上でuserオブジェクトを戻す

キモは すでに存在するいプロパティにアクセスした時に効かせられるフックはPHPに存在しない って話。
ケース2では、すでに一度 $dummy = $phone->user;  でアクセスし、この時点でuserプロパティが 内容null で作られてしまってる。

user_id をいじったら user の内容も連動して変わるってのは錯覚だって話なのよね。
初回だけマジックメソッドの効果でそう動いてるように見えるから混乱する。

user, user_id が共にセットされた後、つまりプロパティが作られた後は user_id を変えただけでは userの内容は自動的には変わらない。
さっき言ったように、すでに存在するプロパティにアクセスした時に効かせられるフックはPHPに存在しないから。
だから
$user = User::find(2);
$phone->user = $user;
とした後に、 $phone->user_id = 1; としても $phone->user の内容は自動的には変わらないし変えることも出来ない。

ただ、saveとか一旦すると user_id の値がDBに保存されて、次 またuser を再取得するときは user_id 1 のオブジェクトが戻されるため
いかにも自動的に変わったように錯覚してしまう。
0356nobodyさん垢版2015/02/22(日) 05:14:46.77ID:???
オブジェクトをセッションに保存するなら、そのオブジェクトのIDだけ保存した方がいい
0357nobodyさん垢版2015/02/22(日) 08:11:55.44ID:???
>>355
丁寧にありがとう。
・null値も「存在するプロパティ」の扱いになる
・存在確認のために参照するだけでnull値が入る
というあたりがなんともモヤモヤするところではありますな。言語仕様的に。

「セッションにモデルを持って複数フォームで順次更新、最後にテーブルへ書き込み」
という流れは割と普通にやりたくなるところだと思うけど、
それはあんまりLaravelish wayではないということなのでしょう。

__wakeupをオーバーライドしてリレーションを取得させるようにすれば
テーブルへの書き込み->読み出しを経た場合と挙動が近くなると思うんだけど、
そう簡単なもんでもないのかな。
0358nobodyさん垢版2015/02/22(日) 08:26:28.55ID:???
というか未定義プロパティにアクセスした時にnull値をセットしてるのがマジックメソッドの中でなら、
それをやめてくれるだけでいいのか。
そうすれば少なくとも初回のキー値代入で常にリレーションはできることになる。
0359nobodyさん垢版2015/02/22(日) 10:23:22.99ID:???
毎回取得してたら遅くなるから、一旦内部で保持しちゃうのかな
とりあえず、後から
$phone->user_id = 1;
としたら、その直後に
$phone->load('user');
ってすればいいなら許容範囲な仕様だと思うけどね
0360nobodyさん垢版2015/02/22(日) 10:45:25.93ID:???
>>359
わかってしまえば対処は楽なんですけどね。
新規作成はnew Model(Input::all())で問題ないから、
更新もfill(Input::all())で済ませたくなる。
で、その前にリレーションを一度も参照してなければなまじ動いてしまうもんだから
すっかり混乱してしまった次第。
こんなんで丸一日とか潰れちゃうんだよな・・・orz
0361nobodyさん垢版2015/02/22(日) 11:09:10.22ID:???
公式ドキュメントのdynamic properties
0362nobodyさん垢版2015/02/22(日) 11:09:50.07ID:???
のところに、この説明があってもいいかもしれない
0363nobodyさん垢版2015/02/22(日) 13:25:02.78ID:???
modelとcontrollerの書き方について教えていただけませんか。
特定の条件を入力して検索機能を作る場合、zendだとmodelにwhere文からfetchまでを書いてreturnすると思うのですが、
larabelではコントローラーで条件を書くのでしょうか?
↓こんな感じであってますか?

class Controroller extends BaseController {
public function anyIndex()
{
$query = new Model;
$query = query->leftJoin('sample', 'sample', '=', 'sample');
$query = query->where('sample', '=', 'sample');
$query->get();
}
}

class Model extends Eloquent {
protected $table = 'sample';
}
0364nobodyさん垢版2015/02/22(日) 17:15:47.93ID:???
60まで
現役通せ
プログラマ
0365364垢版2015/02/22(日) 17:16:21.11ID:???
まちがえた。ごめん。
0366nobodyさん垢版2015/02/24(火) 00:08:41.73ID:???
>>363
別に唯一正しいやり方はないし簡単なクエリーならControllerで組み立てても問題ない
Eloquentの使い方についてはドキュメント読んだほうがいい
http://readouble.com/laravel/5/0/dev/ja/eloquent.html


複雑なクエリーをテストしたかったり他のアクションで再利用したかったり
コードを整理したりしたいならクエリースコープ使えばいいんじゃない
http://readouble.com/laravel/5/0/dev/ja/eloquent.html#query-scopes

class SearchController extends BaseController {
public function getIndex()
{
$condition1 = Input::get('hoge');
$condition2 = Input::get('fuga');
//入力値チェックなどしてから
$models = Model::search($condition1, $condition2)->get();
}
}

class Model extends Eloquent {
public function scopeSearch($query, $condition1, $condition2)
{
return $query->whereHoge($condition1)->whereFuga($condtion2);
}
}

ORMはオブジェクトありきで裏のRDBの存在をあまり意識しないで済むようにするための道具
SQLに近いコードが書きたいならクエリービルダーのほうが向いてるかもね
http://laravel.com/docs/5.0/queries
0367nobodyさん垢版2015/02/25(水) 05:17:57.32ID:???
>>355
これめっちゃハマりどころじゃね?
普通きづかんだろ
0368nobodyさん垢版2015/02/26(木) 05:39:51.70ID:???
>>367
リレーションの仕様を理解していないだけの話だよ
そもそもプロパティなんて作らん、リレーションのキャッシュが働いているだけだ
0369nobodyさん垢版2015/02/26(木) 07:39:22.64ID:???
裏で何が起きてるのか理解してないと使えないような機能なら
公式ドキュメントのよっぽど目立つところにそういう説明がないと
まあ普通にハマる人は出るわね
結果「使えねーフレームワーク」という評価が広まることにもなるかと
実際俺はそうなりかけてたよ
0371nobodyさん垢版2015/02/26(木) 19:22:36.53ID:???
>>368
リレーションをプロパティ(PHPのプロパティでもあるしLarvelのDynamicPropertyでもある)を使って実装してる
0372nobodyさん垢版2015/02/26(木) 20:40:12.95ID:???
>>371
何を言いたいのか判らんけど間違ってるのはここ

>>355
> プロパティ user の存在をチェック (PHPの動き)
> - userプロパティが存在したら そのまま userプロパティの内容を戻す これはPHPの言語仕様でオーバーロードとかは一切できない

> - user_id が存在して値が入っていたら select * from user where user_id = 1 が走った上で
>  userプロパティには userオブジェクトが格納し、その上でuserオブジェクトを戻す
>
> キモは すでに存在するいプロパティにアクセスした時に効かせられるフックはPHPに存在しない って話。
> ケース2では、すでに一度 $dummy = $phone->user;  でアクセスし、この時点でuserプロパティが 内容null で作られてしまってる。
0373nobodyさん垢版2015/02/26(木) 20:51:46.90ID:???
引用が長くてどこが「ここ」なのかよくわからんけど
「未設定リレーションを参照するとnull値が設定されて
その後はキー値を代入してもリレーションは取得されない」
という挙動が言語仕様的に不可避じゃないなら
ぜひとも解消してほしいところかな
原状、リレーションのプロパティがいつ設定されるのか見ようとして
デバッガでウォッチしてるといつまでもできないんだよね
ウォッチも参照だから先にnullが入っちゃうわけ
デバッガ通すと挙動が変わるってのは少なくとも開発に優しくはないと思うよ
0374nobodyさん垢版2015/02/26(木) 21:55:13.04ID:???
>>373
なんで>>355みたいな事言ってたのか判った気がするわ
$relationsがキャッシュの入れ物なのに他のプロパティ監視しててもブレークする訳ないさ
一度Modelのソースを読んだ方がいいよ
0375nobodyさん垢版2015/02/26(木) 23:36:59.44ID:???
話にならんな
俺は355じゃないし
ソース読まないと使えないようなフレームワークなりライブラリは
そもそも使う気にならんという
ごくヘタレなプログラマでしかないよ

Laravelの開発者もユーザーに「一度ソース読んでみたら」
なんて平気で言うような「情強」じゃないことを切に祈るわ

まあでも元MSの人なんだっけ?
じゃ典型的な「情強」()なんだろうなきっとw
0376nobodyさん垢版2015/02/26(木) 23:58:46.58ID:???
ソース読まなくていいフレームワークを教えて欲しい
あればそれを使いたい
0377nobodyさん垢版2015/02/26(木) 23:59:53.62ID:???
真面目な話、.Netとかみんな読んでんの?
0378nobodyさん垢版2015/02/27(金) 00:32:24.44ID:???
罵り合い的なのは良くないな
この問題にどう対処するかの実際のとこが知りたい
ってことでざっと Eloquent/Model.php まわり読んでみたけど
>>355 の解釈であってるように見えた

__get をオーバライドして、メソッド setAttribute を呼び出してる。
setAttribute内で呼び出しプロパティ名をメタプログラミング的にメソッド呼び出ししてる。
hoge->user; だと user() が呼ばれるようになってる。
それがたまたま以下の様な リレーション定義だと BelongsToオブジェクトが戻されてる(Userじゃない)。
fucntion user() { return $this->belongsTo("User") };

protected な $relations って変数もあってリレーション作る度に そこに配列として格納されてるけど、
以降 hoge->user にアクセスした際は、$relations は見ずに やっぱ単にプロパティにアクセスされて
先述のBelongsToオブジェクトが戻ってるように見える。
っていうか hoge->user にアクセスした際に、その都度、 $relations の中身を戻すのって
原理的に出来るのかな?
もっというとプロパティを呼んだ時に、メソッド呼び出しに置き換えられるのかなって話になるのか。
でもそれ出来るなら >>353 みたいな問題おこらんよう気も・・・
0379nobodyさん垢版2015/02/27(金) 00:43:08.87ID:???
まだ検証してないけど
hoge->user というプロパティ形式じゃなくて
hoge->user() で必ずメソッド形式で呼ぶといいのかも
副作用があるかもしれんがw
0380nobodyさん垢版2015/02/27(金) 01:16:35.66ID:???
>>379
それは大丈夫だろうなあ
検証してないけど
0381nobodyさん垢版2015/03/04(水) 19:29:49.84ID:???
イマイチ名前空間についてが理解できん。
書かなくても動くのと、動かないのがあるのは何でなんだぜ?
0382nobodyさん垢版2015/03/04(水) 22:11:48.61ID:???
それだけ言われてもな
他の主流な言語の名前空間とだいたい同じだし
0383nobodyさん垢版2015/03/04(水) 22:22:31.53ID:???
useで名前空間を指定していても
変数名にクラス名を入れてnew $class_nameなんてやるときは
フルパスを入れないとダメなんだよな
かなりもにょる仕様だと思った
0384nobodyさん垢版2015/03/05(木) 04:11:22.76ID:???
Javaとかの名前空間と確かに違う気がする
0385nobodyさん垢版2015/03/05(木) 08:44:43.47ID:???
ワイルドカードによる指定ができないのは結構痛いかも
0388nobodyさん垢版2015/03/06(金) 22:53:23.63ID:???
エイリアスは登録してるんだけど、
カスタムコマンド作ったりすると、結局書かないと動かないでしょ。
どっかで他にも設定するところあるの?
0389nobodyさん垢版2015/03/07(土) 05:27:23.68ID:???
動かないパターンの具体例が無いと答えられる人いないんじゃないか?
0390nobodyさん垢版2015/03/07(土) 19:02:45.35ID:???
ドメインキングとかいう糞鯖だからssh使えないんだけど、sshなしじゃデプロイできないよね?
試しにディレクトリ全部ftpでアップロードしてみたけど動かなかった
0392nobodyさん垢版2015/03/07(土) 19:29:12.55ID:???
ファイル全部ありゃ動くと思うがな
まさかapp/storageのパーミッションを設定してないとか
0393363垢版2015/03/07(土) 21:16:38.31ID:???
>>366
すみません、凄い遅レスなんですが、返信ありがとうございます。
0394nobodyさん垢版2015/03/08(日) 07:53:33.90ID:???
ドメインキングって調べたらPHPが5.3だな
LaravelはPHP5.4以上が必要
0395nobodyさん垢版2015/03/08(日) 08:45:05.45ID:???
5.3ってサポート切れてるんじゃね
0396nobodyさん垢版2015/03/08(日) 08:54:59.54ID:???
5.3系のバージョンアップはもうないって意味ならそのとおりだが
XPとかのサポート切れとはまた意味が違う気がする
安定しててセキュリティに問題がなく新機能が不要なら
ずっとそのまま運用して別に問題ないんじゃね?
0397nobodyさん垢版2015/03/08(日) 10:24:05.96ID:???
脆弱性が発見された時に、詳しい人がすぐに対応できる体制が整ってるならいいんだろうね
0398nobodyさん垢版2015/03/08(日) 11:53:10.98ID:???
そもそも無料なんだから問題出たら5.4以上に移行してね、で済む話ではあるんだがな
移行にあたって互換性の問題がある?そもそも無料なんで我慢してね、って話でもあるし
そもそも無料なんだからサポートってなにそれ美味しいの?って話でもある
0399nobodyさん垢版2015/03/08(日) 16:20:17.93ID:???
>>394
わざわざ調べていただきありがとうございました
0400nobodyさん垢版2015/03/08(日) 20:52:00.32ID:???
なぁーにいいってことよ。俺じゃないけど
0401nobodyさん垢版2015/03/10(火) 09:41:59.59ID:???
Laravel5のスケジュール機能ってWindowsではどうなるんだ?
ちょっと調べた範囲じゃcronの話しか見つからなかった
0402nobodyさん垢版2015/03/10(火) 22:05:06.53ID:???
さすがにWindowsは対象外じゃね
誰かが 記述はそのままに、 Windowsのタスク機能を呼び出すようにするプラグインは書いてくれるかもだが
0403nobodyさん垢版2015/03/11(水) 08:39:16.04ID:???
いやcronやタスクスケジューラから呼ばれる側の立場だろ

Windowsでも日に一度より多いタスクを定義できるようだが
普通にやってできないのは痛いな
あと5分置きとか可能なのかはわからん
0404nobodyさん垢版2015/03/11(水) 22:09:46.54ID:???
WordPressみたいにアクセスされたのをトリガーにする擬似cronってのもあるからね。
いや、調べてないから全然わからんけど。
0405nobodyさん垢版2015/03/12(木) 08:34:54.59ID:???
重い処理を夜中にやっときたい
とかって需要だと
アクセスされたタイミングでしか動かないのは困るな

Windowsサーバなんて排除の方向なら
それはそれで異論ないがね
0406nobodyさん垢版2015/03/12(木) 10:55:20.92ID:???
Laravelのコマンドとして作っておけば、Windowsのタスクスケジューラ的な機能でそのコマンドを実行させるのは大した話しではないような
0407nobodyさん垢版2015/03/12(木) 23:46:46.31ID:8bLDlGtb
今更Laravel4入れるのって、出来ますか?

本やサイトやVagrantやら、みんな入れたら5になっちゃうんですが…
0408nobodyさん垢版2015/03/12(木) 23:55:49.66ID:???
レン鯖のPHP古いの多いからなー
4.1 まででないと動かないとこ多いよな・・・ムカつくぜ

でも 普通に composer.json で Laravelのバージョン指定すればいいだけじゃね
0409nobodyさん垢版2015/03/13(金) 10:06:09.37ID:???
>>406
タスクをひとつずつ登録するんじゃ楽しくないわけよ
5分ごとのcron一つ作ればあとはLaravel側で済む
ってのが売りだからさ
0410nobodyさん垢版2015/03/13(金) 13:41:13.50ID:???
じゃあその一つをWindowsのタスクに登録すればいいんじゃないの
0411nobodyさん垢版2015/03/13(金) 14:22:49.35ID:???
普通には5分置きなんて設定できんだろ?
って話
0412nobodyさん垢版2015/03/13(金) 14:34:49.22ID:???
>>410
すまん、少なくとも7以降ならできるようだな
お騒がせしたわ消えるわ
0413nobodyさん垢版2015/03/13(金) 21:23:30.85ID:???
Laravelを基礎から覚えたいんですが、書籍がないんですよね・・・
電子書籍は内容的に今一つだし・・・

流行るのかなLaravel・・・
0414nobodyさん垢版2015/03/13(金) 21:33:09.54ID:???
海の向こうでは大流行だよ
0415nobodyさん垢版2015/03/13(金) 21:43:37.69ID:???
技術系フォーラムで話題になった回数ナンバーワン
っていう記事を見て使い始めたけど
使いこなせない人が質問してる回数ナンバーワン
ってことじゃないのかと思い始めた
0416nobodyさん垢版2015/03/13(金) 21:45:04.71ID:???
まずは公式ドキュメントを一通り読むのがいいと思う
0417nobodyさん垢版2015/03/14(土) 01:58:01.51ID:???
その先がないんだよな
API見てもインターフェースだけで動作内容が書いてないし
0418nobodyさん垢版2015/03/14(土) 04:21:54.62ID:???
とりあえずなんか作りながら必要になった情報探してく感じでやってるから、あんま不便に感じたことないな。
困ったらドキュメントとかソース見ればいいし。
0419nobodyさん垢版2015/03/14(土) 10:08:56.08ID:???
だね。
俺なんかはブログ形式のサンプルをgitから探してソース読み読み勉強した。
手取り足取り解説して欲しいけど、まあそれは書籍になってからって感じだね。

これとか
https://github.com/ytake/Tutorial.Laravel4
0420nobodyさん垢版2015/03/14(土) 15:09:56.49ID:???
laravelは他のフレームワークと比べてどこか優れていて、
流行っているんですか?
0421nobodyさん垢版2015/03/14(土) 15:55:01.98ID:???
凄く手抜きができそうな印象を与えてくれるところかな
実際には手抜きするために従わなきゃならないルールが多くて結構大変な印象
まあ慣れたら楽になるんだろうけど
0422nobodyさん垢版2015/03/14(土) 18:57:35.76ID:???
フォームとか、クッキーとか、セッションとか、認証とか、バリデーションとか、エラー処理とか
その辺全部簡単に実装できる。
ルーティングもページングも簡単だし。

だけど>>421が言うように手抜きの方法を覚えるのがめんどう。
「1から実装するよりは簡単だろ」と言われそうだけど、
慣れてる処理なんかは1から書いたほうが楽なことが多々ある。
特にブレードテンプレートなんかは地雷。

でも全体的に使いやすいよ。
慣れると何でもカスタマイズできるし。
0423nobodyさん垢版2015/03/14(土) 19:38:51.44ID:???
bladeの中でもちゃんとデバッガが動いてくれりゃいいんだけどな
まあViewには極力ロジックを書かないのがBest Practiceだから筋違いなんだけどさ
継承とかセクションの書き方も最初は厄介なものがあるけど
ちゃんと使うと凄い楽できるよね
0425nobodyさん垢版2015/03/15(日) 16:45:05.27ID:???
>フォームとか、クッキーとか、セッションとか、認証とか、バリデーションとか、エラー処理とか
>その辺全部簡単に実装できる。

ほとんどのフレームワークなら全部簡単に実装できそうだけど。。。

Ver5から、フォームは非標準になったようですね。
0426nobodyさん垢版2015/03/16(月) 12:48:23.21ID:???
本でるってよ。ツイッターとかで誰かが言ってた。
0427nobodyさん垢版2015/03/16(月) 18:34:00.72ID:???
本楽しみ、バージョン4かな5かな
0428nobodyさん垢版2015/03/17(火) 17:21:22.73ID:???
lolipopのチカッパプランで動作確認出来た。
0429nobodyさん垢版2015/03/20(金) 02:23:45.03ID:???
日本で一番有名なLaravelerって誰?
0430nobodyさん垢版2015/03/20(金) 05:44:35.08ID:???
公式ドキュメントを一括ダウンロードしたいです。
できれば日本語版がいいです。

URLや方法がありましたら教えてください。
0431nobodyさん垢版2015/03/23(月) 14:40:56.39ID:???
いろんなやり方でできるのはいいけど
用途や規模によってどれが望ましいとかおすすめしないとか
ある程度ドキュメントに指針がほしいわ
コントローラールートが楽だからってんで使い始めたけど
どうにも痒いところに手が届かずイライラするばかり
で、いろいろ検索したら「可読性を下げるだけ、使うな」の大合唱
そのうちなくなるかも、とか書かれてる始末
そんなもん初めから実装すんなっつーのよ
0432nobodyさん垢版2015/03/23(月) 19:16:30.36ID:???
>>431
そんなことをいちいちドキュメントに書かれたら、ドキュメントの
質が落ちると思うぞ。

いろんな方法から最適なものを選択する力がないなら、チュートリアル
通りに開発を進めるのが無難だろう。
0433nobodyさん垢版2015/03/23(月) 20:10:55.89ID:???
なんでいちいちそういう嫌味な言い方になるかね
0434nobodyさん垢版2015/03/24(火) 04:35:40.04ID:???
Laravelで書かれたお手本的なコードが欲しいね
RailsはGithubに山ほどあったからすげえ助かった
0435nobodyさん垢版2015/03/24(火) 20:39:26.98ID:???
探せばあるけど山ほどはないもんな
0436nobodyさん垢版2015/03/25(水) 14:28:59.43ID:???
新しい公式ドキュメント見難いよー
なんでサイドバーやめちゃったんだ
スマホで見てる奴なんてほとんどいないだろ…。
むしろもっとサイドバーにメニューたくさん表示してほしいくらいなのに。
アコーディオン式にすらなってないとかかんべんしてくれ
0438nobodyさん垢版2015/03/25(水) 22:07:15.94ID:???
同意!

目次は隠れたり折りたたまれたりしないで、ページの上か左にフツーに表示して欲しい。
0439nobodyさん垢版2015/04/01(水) 14:53:53.30ID:???
laravel5への以降を試してる

{{ Form::open() }} で画面に生<form>タグ表示されるだがw

何がおまじないが足りない?
0440nobodyさん垢版2015/04/01(水) 14:57:53.04ID:???
>>439
あう、速攻で自己解決www

もっとドキュメント読み込まないと
0442nobodyさん垢版2015/04/03(金) 19:48:58.26ID:/u+q9gob
このフレームワーク重いから使うのやめた
0443nobodyさん垢版2015/04/03(金) 20:06:02.67ID:???
重いだろうなぁというのはリクエストのたびに処理するファイル数やマジックメソッドの嵐で分かるが
具体的にどんくらい遅かった? 気になる
0444nobodyさん垢版2015/04/03(金) 20:58:39.43ID:???
5ではブートアップが劇的に早くなってるよな
てか4でもデバッグモードやめれば早いんだが
5では常時compiled.phpを作るようになった
デバッグfalseでも重いってんなら知らん
0445nobodyさん垢版2015/04/03(金) 21:49:56.51ID:???
俺も、チュートリアルやってみて、クソ重いから止めた。
Eloquentなんて、重すぎて使い物にならない。

納品後に「応答遅すぎだ」なんて言われたら、対応できないもんな。
0446nobodyさん垢版2015/04/03(金) 21:51:36.39ID:???
そんな奴らがなんでこのスレにいるか、だな
0447nobodyさん垢版2015/04/03(金) 23:08:27.59ID:???
ちゃんとデバックモード切って、キャッシュ使えば早いよ。
むしろ他のどんなフレームワークより早いくらいだけど。
0449nobodyさん垢版2015/04/04(土) 07:31:21.91ID:pNr6GXYK
そのベンチ、ありえないくらいlaravelだけおそいよ
メモリ512とか少ない環境でやってるんじゃないのかねー
会社の環境で動かすとfuelphpとかと大して変わらないんだけどな
0450nobodyさん垢版2015/04/04(土) 09:42:48.78ID:???
PHP遅いから使うのやめたわ
0451nobodyさん垢版2015/04/04(土) 13:25:08.37ID:???
PhalconってPHPじゃなくCで書いてあるんだな
そら速いわけだ
あのDAOみたいなORMはちょっと使う気にならんが
0453nobodyさん垢版2015/04/09(木) 13:22:10.88ID:jehHF/WR
つまりLaravelはメモリを大量消費するからコストがかかるってことか
それなりに良い環境で動かせない場合はLaravelは勧められないな
0454nobodyさん垢版2015/04/17(金) 00:43:23.92ID:???
Unread × 2 = So unreadable!!
2倍(Double)の読みにくさを!
0455nobodyさん垢版2015/04/17(金) 13:33:03.90ID:???
lumenキタなー
待ち望んでいたフレームワークだ
早速slimから移行しよ
0456nobodyさん垢版2015/04/20(月) 13:12:29.98ID:???
>>455
試してみた?
ある程度感触がつかめたらインプレよろ
直でLaravel使うのに比べて
どんなメリットがあるのかいまいちわからん
0457nobodyさん垢版2015/04/21(火) 08:57:10.47ID:???
独自仕様独自仕様で困るけど、
ぐぐると即効で解決策見つかるのがすごいな。
日本語の解説はほとんどないけどw
0458nobodyさん垢版2015/04/21(火) 15:21:49.31ID:???
>>456
laravelと比べてのメリットとなると軽いことぐらいなんじゃね?
0459nobodyさん垢版2015/04/21(火) 16:14:48.24ID:???
phpを使う理由が知りたい。
複雑で覚えにくくて初心者が扱いにくい言語という印象。
0460nobodyさん垢版2015/04/21(火) 17:13:10.68ID:???
言語論争はさすがにスレ違いやな
10年以上争い続けてるスレがあったはずだからそっちでやるといい
0461nobodyさん垢版2015/04/21(火) 19:22:58.92ID:???
技評のムックって内容いいの?

Laravelエキスパート養成読本[モダンな開発を実現するPHPフレームワーク!] (Software Design plus)
0462nobodyさん垢版2015/04/22(水) 00:47:58.19ID:???
正直Laravelになんの魅力も感じない。
クソ遅いし。
0464nobodyさん垢版2015/04/22(水) 14:32:11.12ID:???
phpを今さら否定しても始まらん。
世界中の名だたるwebサービスで使われてる。
それをいうならJavaScriptなんて糞の極みだが、こうなったら使わざるをえない。

農家がコメを作るのに水田作るのと一緒だ。
めんどくさいが実りのためには作るしかない。

本は気になってるけど、出すの遅かったな。
もうだいたいの使い方覚えちゃったよw
0465nobodyさん垢版2015/04/26(日) 11:04:04.20ID:???
おっさんは自分が仕切っていると勘違いしてるんだろう。
確かにXSSについては早く直したほうがいいのだろうけど、
他人の記事の正誤表について上から偉そうに言う暇があったら、
自分のサイトのCSSのズレなおせ。
0466nobodyさん垢版2015/04/28(火) 10:53:10.55ID:oM0Me9SU
>>461
いろんなブログとかの評判曰く中級者向けって感じ。
他のフレームワークとか使ってた人がなんとなくを把握するにはいいかもだけど、
俺のようなド素人にはあんまり良くなかった。
全体的に見辛いし、サンプルのコードもバグあるし
0467nobodyさん垢版2015/04/29(水) 11:38:12.20ID:???
なんで一冊目がエキスパート育成なんだろうな?

普通こういうのは入門編とか、初めての…とか、初心者向けとかが一番売れんのに。
0468nobodyさん垢版2015/04/29(水) 17:02:56.47ID:???
初心者向けは公式サイトので十分だからじゃね? アレ良く出来てるよ
0469nobodyさん垢版2015/05/01(金) 20:58:19.58ID:???
laravel5の遅さは異常。
何か解決策ない?
0470nobodyさん垢版2015/05/01(金) 21:36:47.67ID:???
デバッグモードで動かしてるんじゃ? よほどアクセスがないサービスでないと問題になることないだろ
0471nobodyさん垢版2015/05/02(土) 16:05:58.26ID:???
ただのアンチだろ
実際使ってるかも怪しい
0473nobodyさん垢版2015/05/08(金) 15:07:36.47ID:???
ケーキ?ララベル?ケーキ?ララベル?
う〜〜〜、あーーりーん!!
0477nobodyさん垢版2015/05/11(月) 17:12:44.20ID:???
で、5使ってみた感じどうよ?
4とかわならい?
0479nobodyさん垢版2015/05/16(土) 21:18:32.34ID:???
Laravelエキスパート養成読本って本が、本屋にあったので立ち読みした。

著者には悪いが、Webのマニュアル読んだほうが100倍マシ! と思った。
0480nobodyさん垢版2015/05/18(月) 22:59:31.41ID:???
久々にlaravel使うが
laravel3の頃からEloquentの処理内容はあまり変わってないんだな・・・
viewcomposerは使ったほうがいいぞ
0481nobodyさん垢版2015/05/20(水) 16:37:14.72ID:ZR/gr4cf
Lumenでかすぎ。
DLして使う前に削除した。

あんなにでかいと、フレームワーク絡みのトラブルの時、
追っていくのしんどいだろうが。
0482nobodyさん垢版2015/05/20(水) 21:51:45.91ID:???
lumenの存在意義はベンチ用ぐらいじゃないのかね
開発では自前で全て用意する系じゃなきゃ使えないし

そもそもFWの挙動が追いやすいとかならCIとか使うべき
CI3は知らないが、CI2は実装すかすかで追いやすかったぞ
0483nobodyさん垢版2015/05/21(木) 01:49:08.79ID:???
っていうかわざわざフレームワーク自体のソース見なきゃいけないほど独自の実装してない。
フレームワークによくあるオーソドックスをバランスよく組み合わせてるだけ。

そんなところが海外で人気の理由なんだろうけど。

ただManualが糞だから初心者には何のこと言ってるのか理解するのが困難。
0484nobodyさん垢版2015/05/21(木) 08:16:46.28ID:???
公式マニュアルは最初から全部読まないとダメなのが面倒。
0485nobodyさん垢版2015/05/21(木) 16:01:36.45ID:ZYAM1o+z
Lumenの競合相手が、Slim、Phalconだとすると、
全く優っているところがない。
048610人に一人はカルトか外国人垢版2015/05/23(土) 20:14:15.48ID:d70HWW/K
★マインドコントロールの手法★

・沢山の人が偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法

偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い

靖国参拝、皇族、国旗国歌、神社神道を嫌うカルト

10人に一人はカルトか外国人

「ガスライティング」で検索を!
0487nobodyさん垢版2015/05/27(水) 22:28:18.54ID:???
POSTパラメータのバリデーションって
コントローラーでやっていいの?
0488nobodyさん垢版2015/05/28(木) 02:16:29.00ID:???
Railsから来るとアレはビビるよな
でもPOSTされたデータ自体はモデルと=ってわけじゃないからコントローラーでやるってのもアリかなと思った
POST値のバリデーションとモデルのバリデーションは別ってのも合理的っちゃ合理的
ただ 書く場所がバラバラになるのはイヤだから 結局 モデルにバリデーションルールのリストを書くようにしちゃったけどね
0489nobodyさん垢版2015/05/28(木) 10:11:09.38ID:???
え、ララベルはコントローラーでやる前提じゃないの?

withErrorsやら$validator->messages使ってViewにエラーメッセージ渡すってのが
公式の使い方でしょ。
0490nobodyさん垢版2015/05/28(木) 19:04:08.58ID:???
Form Request Validation てのもある
0491nobodyさん垢版2015/05/30(土) 12:05:53.96ID:???
じゃあもうJavaScriptでバリデーションすりゃいいじゃん
0492nobodyさん垢版2015/05/30(土) 15:56:41.02ID:???
ローカルproxyでtrapして、値書き換えられるとか
考えすぎなの? 普通がわからん。
0494nobodyさん垢版2015/05/31(日) 01:46:04.41ID:???
Auth::user()->とかで、どこからでもログイン情報が取り出せるのってどういう仕組みなの?俺みたいなバカでも分かるように誰か解説してくれ
0495nobodyさん垢版2015/05/31(日) 10:46:35.92ID:???
設定ファイルとモデルで予めデータベースへのアクセスを定義してるから

自分で使えるようにpostやらcommentなんてモデル作れば同じように使えるで
0496nobodyさん垢版2015/05/31(日) 22:26:51.95ID:???
postやcommentってモデル作ると¥postや¥commentでどこからでもアクセス出来るのな。

例えば$ret=¥post::createと$ret->fillの間で¥post::whereとかやってもいいの?
0497nobodyさん垢版2015/06/03(水) 09:05:04.53ID:???
Collectionのlistsメソッドの返り値が
いつの間にかCollectionになってないか?
ドキュメントによればArrayのはずで
以前は確かにArrayだったと思うんだが
0498nobodyさん垢版2015/06/03(水) 20:03:42.97ID:???
blade側に渡した配列の検証方法ってありますか?

return view('ビュー名')->with(compact('配列名'));

という感じでmodelからbladeに配列を渡してるんだけど、幾つかのカラムの値が渡らないんです。
0499nobodyさん垢版2015/06/03(水) 20:20:56.77ID:???
コントローラーじゃなくて、モデルからブレードにわたしてんの?なして?
0500nobodyさん垢版2015/06/03(水) 20:30:31.43ID:???
レスありがとうございます。

説明下手ですいません。
コントローラでmodelから取得した配列をbladeに渡しています。
0501nobodyさん垢版2015/06/03(水) 21:31:46.45ID:???
こんなふうにテンプレートを定義して
public $layout = 'template';

こんな風に渡すといいよ
$this->layout->content = View::make('ビュー名', array('results' => $results, 'arg2' => $arg2));

この場合$resultsが配列の場合は
@foreach($results as $val)
ごにょごにょ
@endforeach

みたいな感じで取れる。
0502nobodyさん垢版2015/06/03(水) 22:16:24.91ID:???
laravel-debugbar 入れれば見れた気がする
0503nobodyさん垢版2015/06/04(木) 10:05:15.96ID:???
>501さん
ありがとう。

1. $templateを定義して、¥View::makeの戻り値をcontentsに値を代入している理由
2. ¥View::makeを使う理由

がわかりません。

contensにブレードが生成したhtmlが入ってるよということでしょうか?
0504nobodyさん垢版2015/06/04(木) 10:11:54.09ID:???
>502さん

レスありがとうございます!

debugbar入れてみた。
IDE使ってるからこういうブラウザに機能追加されるようなデバッグツールの使い道がよくわからん。

クエリビルダだと実行されたクエリがわからないので、それが気軽にみられるようになるとこは気に入った。

Debug::info();で出力するってことでしょうか?
0505nobodyさん垢版2015/06/04(木) 13:36:44.12ID:???
>>503
意味は使ってみたらわかる。
まずやってみるよろし。

上の例ではtemplate.blade.phpで{{@$content}}って書けばあとは作成したビューで値が取れる。
View::makeでビューの作成と、ビューに渡す配列を同時に設定してんだね。楽だね。

つまり「ビュー名.blade.php」で@foreach($results as $val)とかすればいいってことだね。
0506nobodyさん垢版2015/06/04(木) 13:41:52.81ID:???
あ、テンプレートを作る理由はもちろん各パーツのモジュール化が楽だから。
ヘッダーとか、フッターとか、ビュー作るごとにわざわざ付けるの面倒でしょ。
全部テンプレート経由で設定しとけば、変更も楽よ。
0507nobodyさん垢版2015/06/04(木) 14:13:45.46ID:???
>505,506さん
すごい!
テンプレート作る理由の解説、滅茶苦茶分かりやすくて涙出そうです。
ありがとうございます。


ただやってみたのですがうまくはいきませんでした。
環境はlaravel5で、上記例の$this->layout->content = View::make(…とするとプロパティがないようでエラーが発生します。
予めtemplate.blade.phpに何か仕込んでおく必要があるのでしょうか?
0508nobodyさん垢版2015/06/04(木) 14:29:57.63ID:???
ごめん、5はまだ試してないんだw

PostController.phpを作る。
class PostController extends BaseController { // http://example.com/post

public $layout = 'template'; // これtemplate.blade.php

public function getIndex($id) // getでhttp://example.com/post/<;id>でアクセスした場合
{
$results = Post::where('id', $id)->get(); // 適当にPostモデルで定義したデータベースから値取得
$hoge = "hoge"; // 解説のために、こんなパラメータも追加

$this->layout->content = View::make('post', array( // ここでpost.blade.php
'results' => $resultsCashe,
'hoge' => $hoge
));
}

template.blade.php作る。
//なんか適当にヘッダーとか
{{@$content}}
//サイドバーとかフッターとか

post.blade.php作る。
@foreach($results as $val)
e($val->post_title); //例えば投稿のタイトルとか出力
@endforeach

全体こんな感じ
0509nobodyさん垢版2015/06/04(木) 14:31:39.98ID:???
あ、コピペしてミスった。

「'results' => $resultsCashe,」じゃなくて
「'results' => $results,」ね
0510nobodyさん垢版2015/06/04(木) 14:39:06.24ID:???
$results = モデル名::all()->where(条件)->pagenation(1ページ表示件数);

として取得したオブジェクトをビューで表示すると

@foreach($results as $val)

{{$val->カラム名}} ・・・表示できない(値がnullになっている)
{{$val['origin']['カラム名']}} ・・・表示できる
{{$val->created_at}} ・・・表示できる

@endforeach

{{$results->render()}} ・・・表示できる

という結果になりテーブルの値がビューに渡せません。
created_atはcarbonという仕組みのおかげで表示できているだけのようです。

例えばコントローラ側を$results = モデル名::all()->where(条件)->pagination(1ページ表示件数)->toArray();
とすれば普通に連想配列で値は取れますが

@foreach($results as $val)

{{$val['カラム名']}} ・・・表示できる
{{$val->created_at}} ・・・表示できない

@endforeach

{{$results->render()}} ・・・エラーが発生してしまう

今度はページネーションが使えなくなってしまいます。

どうやるのが正解なのでしょうか?
0511nobodyさん垢版2015/06/04(木) 14:40:04.40ID:???
>>504
普通にViewsタブ内の各ビューをクリックすれば、そのビューの持ってる変数見られるでしょ
0512nobodyさん垢版2015/06/04(木) 14:45:46.24ID:???
質問の続き(510)を先に書き込んでしまいました。すみません。。。


>508さん
完全に理解できました!ありがとうございます。
用途としては画面共通で使う検索条件のプルダウン用配列なんかをtemplateで読み込んでおくような使い方でいいのでしょうか?
0513nobodyさん垢版2015/06/04(木) 14:49:46.33ID:???
>511さん

ありがとうございます。
私の環境だと配列を渡すと配列名しか見えません。
0514nobodyさん垢版2015/06/04(木) 15:14:39.87ID:???
用途は思いつく限りなんでもいいんじゃない?

上で書いたとおりヘッダーやフッターを設定しとくのが一般的だろうけども。

例えば特定の画面で、メニューバーの表示非表示をコントロールしたいとかの場合は
$this->layout->menubar = View::make('menubar', array('flag' => 'true'));
みたいにすればフラグも渡せるし。

まあなんていうか、自由w
0515nobodyさん垢版2015/06/05(金) 11:30:37.70ID:???
度々すみません。

510の件まだ解決できず悩んでいます。

ビューに渡したコレクションからアロー演算子でテーブルの値を取得し、さらにrender()でpaginationを生成するにはどのようにしたらよいのでしょうか。

2ちゃんねるの皆さんのお知恵をかしてください。環境はlaravel5です。
0516nobodyさん垢版2015/06/05(金) 13:11:19.84ID:???
>>510
最初の$val->カラム名で値が取れないのがおかしい
その$valが何なのかもう少し調べてみばいいんじゃないかな
get_class関数でそれがどのクラスのオブジェクトなのか調べたり、単純に中身を表示させたりとかさ
中身はdd関数で表示できたかな
0517nobodyさん垢版2015/06/05(金) 13:48:57.94ID:???
pagenationのところ、paginateじゃないの?変わったの?

モデルはこんなかんじで

$results = Post::orderBy('id', 'desc')->paginate(10);

ビューは

{{$results->links()}}

ってな感じでできない?
0518nobodyさん垢版2015/06/06(土) 11:33:08.22ID:T7FH2DZR
>516さん

ありがとうございます。$valの型について調べてみました。


$results1 = モデル名::orderby('created_at','desc')->paginate(PER_PAGE);
$results2 = モデル名::all();
$results3 = モデル名::all()->paginate(PER_PAGE);
$results4 = モデル名::all()->forPage(1,PER_PAGE);

とした場合、それぞれの型は下記の通りでした。

$results1 ・・・ Illuminate\Pagination\LengthAwarePaginator
$results2 ・・・ Illuminate\Database\Eloquent\Collection
$results3 ・・・ staticメソッドが無いというエラー
$results4 ・・・ Illuminate\Database\Eloquent\Collection

さらに$result1,$result2,$result4をコントローラで
foreach($resultN as $val)した時の$valの型は

$results1 ・・・ App\モデル名
$results2 ・・・ App\モデル名
$results3 ・・・ -
$results4 ・・・ App\モデル名

となり、$val->カラム名では値が取得できませんでした。
ブレード側で{{ $val->カラム名 }}とした場合は値は取得できず
{{ $val['original']['カラム名'] }}とすることで値が取得できました。

難しい。。。
0519nobodyさん垢版2015/06/06(土) 11:35:35.27ID:T7FH2DZR
>517さん

ありがとうございます!
links()はlaravel5からrender()になったようです。
とはいえ同様のことをやっているように思うのですが
うまくいきません。。
0520nobodyさん垢版2015/06/06(土) 12:28:36.65ID:???
本当にその方法で値が取れないなら、モデルか、データベースの設計が間違ってる。

例えばPostというモデルを作る場合は、こんなかんじだよ。

class Post extends Eloquent {
protected $guarded = []; // 複数のカラムからデータを取得するため
protected $table = 'posts';
}

protected $table = 'posts'は省略可能だけど、自動でモデル名+sになるから注意。

データベースについてはちゃんとモデル名に対応したテーブルがあること、
配列で返って来るだけの複数の投稿があることを確認かなぁ。

っていうか$val['original']ってのがさっぱりわからん。
たぶんどっかで凡ミスしてる。
0522nobodyさん垢版2015/06/06(土) 15:04:20.38ID:???
>>518
> ブレード側で{{ $val->カラム名 }}とした場合は値は取得できず
> {{ $val['original']['カラム名'] }}とすることで値が取得できました。

モデルにおかしなミューテーターを書いてるだけのように見えるが
0524nobodyさん垢版2015/06/07(日) 15:41:19.32ID:???
>>523
ごめん >>522 はミューテーターじゃなくてアクセサーだ
original 経由で正しい値が読み取れるのなら
アクセサーかアクセサーを呼び出すどこかに問題があるんじゃないかとね
0525nobodyさん垢版2015/06/07(日) 20:11:06.43ID:???
518です。

>520、521、522さん
ありがとうございます!!
原因が判明しました。どうやらモデルにカラムと同名のプロパティを定義したことが原因だったようです。
ガード、ミューテタがヒントになりました。
0526nobodyさん垢版2015/06/07(日) 23:49:39.17ID:???
検証するときは考えられる最も単純な記述で値が取れるか調べるといいよ。
「ここはあってるはず」ってのが一番の天敵。
0527nobodyさん垢版2015/06/08(月) 00:28:02.49ID:???
>526さん

アドバイスありがとうございます。
0528nobodyさん垢版2015/06/14(日) 00:28:37.45ID:???
っていうか、ミューテーターとかアクセサーとか初めて聞いた。
一般的に使われる言葉なの?
0529nobodyさん垢版2015/06/16(火) 08:34:14.30ID:sVb6gbHI
使われてるんじゃね?
アクセサーのことを
ゲッター/セッターの両方をさす場合(rubyとかrubyとかrubyとか)もあるから、
少しややこしいけど。
0530nobodyさん垢版2015/06/22(月) 18:07:15.57ID:???
やっぱり5.1からEloquentとIlluminate&#165;SupportのCollectionのlistsメソッドは
arrayじゃなくCollectionを返すようになったんだな
しかしQueryBuilderのlistsはarrayのままという謎仕様
こういうのホントやめてほしいんだがな
0531nobodyさん垢版2015/06/22(月) 19:37:25.41ID:???
なぁーにvar_dumpで頑張ればいいさ
0532nobodyさん垢版2015/06/23(火) 09:11:54.72ID:???
そういう時はプルリクかイシュー書いてみんなで良くしていこうよ
0533nobodyさん垢版2015/06/24(水) 09:06:25.58ID:???
laravl取り入れてる人や会社はレベルが高くて丁寧なイメージあるね。
海外でも活発に情報がやりとりされてるし。
あんま素人が手を出しにくいってのもあるかもしれんけども。
0534nobodyさん垢版2015/06/26(金) 19:31:44.88ID:???
ねーよそんなイメージ。
てかララベルを業務に採用している会社なんてあるんかw
0535nobodyさん垢版2015/06/27(土) 00:08:04.47ID:???
すまんな、ここ数年俺が納品した会社はlaravel運用だ
0536nobodyさん垢版2015/06/27(土) 00:35:31.98ID:???
普通にあるだろ。しらねーなら黙ってろ田舎もん。
0537nobodyさん垢版2015/07/04(土) 13:47:19.61ID:???
Laravelの賞味期限は、あと何年くらいかな・・・
0538nobodyさん垢版2015/07/09(木) 21:55:12.94ID:ZXY7EvvD
お、5.1はLTSか。
0539nobodyさん垢版2015/07/17(金) 21:42:22.89ID:???
CodeIgniterをずっと使ってきましたが、ちょっとだけ新しいフレームワーク
に興味を持ち始めました。

Laravelって良いですか?
10年以上運用保守するシステムにも安心して使えますか?

CodeIgniterから乗り換えた方、Laravelの良さを教えてください。
0540nobodyさん垢版2015/07/17(金) 23:33:51.59ID:???
今回の長期保証でも2年とかじゃね?
WordPressみたいなもんだよ。ころころ更新される。
良さはコンポーサーとか、restfulなモデルとか、OAuthとか、新しい技術をどんどん取り入れること。
だから長期運用が目的なら向かないだろうね。

ちなみに10年同じバージョンで運用保守可能なフレームワークなんてないから。
CentOSですら無理じゃね?w
0541nobodyさん垢版2015/07/18(土) 09:17:57.86ID:???
getメソッドとpostメソッドを別に扱う点だな。
最初は戸惑うだろし、混在したコードを書いてしましがちだが、徹底して分離するべし。

もうcodeIgniterには戻れん。
0543nobodyさん垢版2015/07/25(土) 22:48:26.63ID:k4s0riSk
煮詰まってて意見が欲しいです。

laravel5に使ってます。

publicディレクトリ配下に実ディレクトリを配置したいです。
例えば、下みたいに特定のディレクトリ(今回は、pc)だけに聞く外部ファイルを置きたいです。
/laravel/public/pc/common/hoge.css

デフォルトだと、実ディレクトリがあれば、アクセス時に403になってしまいます。

nginxのtry_grepでディレクトリしていしてないからかなと思ったのですが、そもそも指定されてる。
publicディレクトリのパーミッションも755

外部ファイルと、アクセスするディレクトリを完全に分けてしまう事も考えましたが、
HTMLが出来上がってしまったので、できれば現状のフォルダ構成を保ちたい。

何か良い方法は無いでしょうか?
0544nobodyさん垢版2015/07/26(日) 00:10:36.10ID:???
特定のディレクトリ(今回は、pc)だけに聞く外部ファイルを置きたいです

これの意味が何回読んでもわからんw
聞くが「効く」でも「きく」でもさっぱりわからん

内部でpublic以下のファイルを指定したいだけなら、そんな関数が用意されてるでしょ。
0545nobodyさん垢版2015/07/26(日) 01:30:22.00ID:9J+5FH4Y
>>544
ありがとう。そして申し訳ない。

>特定のディレクトリ(今回は、pc)だけに聞く外部ファイルを置きたいです
外部ファイルはcssだと思って聞いてほしいです。
全てのページ用と、特定のページ用のcssを用意していて、
pcディレクトリだけ使いたいcssは、同じ階層のディレクトリにcssファイルをおきたいです。

例えば、
/index.html はcommon.css(共通)だけ。
/pc/index.htmlはcommon.cssとpc.css(特定)を読み込む。
ということをしたいです。

こういう場合、下みたいなファイル構成でhtmlを書く事があると思います。
/index.html
/common.css
/pc/index.html
/pc/pc.css


これをlaravelでもやりたかったので、
rootファイルには、
「/」、「/pc/」にアクセスされた時に個別のviewを見に行くように処理を書き、
スタイルファイルは相対パスで読めるように、public配下に「common.css」と「pc/common.css」を置きました。

この状態で、http://(ドメイン)/pc/にアクセスると403になってしまう状態です。

>内部でpublic以下のファイルを指定したいだけなら、そんな関数が用意されてるでしょ。
assets関数を使えばできるし、使わなくても可能なのは確認しました。
悩んでいることは、設置したディレクトリ配下のページにアクセスすると403になってしまう事です。
0546nobodyさん垢版2015/07/26(日) 01:32:54.76ID:9J+5FH4Y
>スタイルファイルは相対パスで読めるように、public配下に「common.css」と「pc/common.css」を置きました。
「common.css」と「pc/pc.css」ですね。失礼しました。
0547nobodyさん垢版2015/07/26(日) 06:46:43.83ID:???
そもそもなぜに相対を使う?
普通に/common.cssと/pc/pc.cssを読むのではダメなの?
てかファイル名違うならフォルダ分ける意味もなくないか?
0548nobodyさん垢版2015/07/26(日) 09:29:28.73ID:???
public_path(pc/pc.css)
これじゃあかんの?

これで403なるならnginxだっけ?のリライトらへんが間違ってる。

もしかして、public配下のディレクトリにページを作って、アクセスしてんの?
それなら、そもそもLaravelを勘違いしてる
0549nobodyさん垢版2015/07/26(日) 10:24:52.58ID:9J+5FH4Y
指摘ありがとう。
初歩的な事なのですが、画像やcssやjsはpublic配下以外の場所に置くのでしょうか?
publicがlaravelのドキュメントルートだと思って、public配下にファイルを置いてます。
話を聞いていて、今のhtmlの組み方がlaravelに合ってないんじゃないかと思えてきました。
他の人はどうやっているのだろう…?。
マークアッパーから上がって来るhtmlはLaravelの事なんか考えていないでしょうし。

>>547
>普通に/common.cssと/pc/pc.cssを読むのではダメなの?
相対から絶対に変えるのは可能です。それで、cssを読むことは出来ました。
外部ファイルは設置して読めるのですが、/pc/にviewを作って(rootファイルに「/pc/」アクセス時の振舞を設定して)、「/pc/」にアクセスが出来ません。

>てかファイル名違うならフォルダ分ける意味もなくないか?
分けたのは、あくまで個人の主義です。
HTMLを組むときに、個別のディレクトリしか使わないものを一色多にしてしまうと(自分は)管理しずらいです。
また、外部ファイル読み込み用のディレクトリを別途用意(例えば、pc/pc.cssではなく、common/pc/pc.css)にするでも良いかと思ったのですが、
この問題がある事は予想していなかったので自分の調査不足です。

>>548
>public_path(pc/pc.css)これじゃあかんの?
なるほど。publicディレクトリのパスを取得する関数ですね。
ただ、今抱えている問題と少し違うかもしれません。
cssのパスの通し方に困っているわけではないのです。rootファイルのルーティング(?)で迷ってます。
pubilicディレクトリ内に実ディレクトリを作ってしまうと、そのディレクトリ配下にルーティングすると403になることを解決したいです。

>もしかして、public配下のディレクトリにページを作って、アクセスしてんの?
それは「publicディレクトリ配下に静的ページを置いてるか?」という事であってますか?
それなら、やってません。viewかcontorollerでしか、表示を作ってないです。
0550nobodyさん垢版2015/07/26(日) 13:14:46.10ID:???
>>549
viewはhtmlを作るためのテンプレートであって
htmlそのものじゃない
Laravelのbladeエンジンがviewファイルを読み取って
それを変換した結果のphpプログラムがwebサーバに渡され
そのphpが(普通と同じように)htmlを吐き出すわけ

publicはあくまでも通常のサイトルートであって
そこにはwebサーバ(NginX)が直接処理できる形のファイルを置く
具体的にはcssやjsだな
もちろんphpもwebサーバが処理できるファイルではあるが
publicにindex.php以外のphpファイルを置くのは
Laravelのルーティングとぶつかるからやらない方がいい
またblade.phpは拡張子こそphpでも
webサーバが処理できる正規のphpではないので
いかなる意味でもpublicに置くべきじゃない
0551nobodyさん垢版2015/07/26(日) 13:20:18.62ID:???
またviewファイルをLaravelのルーティング経由で読ませようとしたってダメ
.blade.phpは上に書いたように「phpじゃない」んだからな
viewはあくまでもresource/views(のサブディレクトリでもいい)に置いて
Viewクラスなりview()関数に専用のドット記法でパスを渡す必要がある
0552nobodyさん垢版2015/07/26(日) 14:05:09.51ID:???
>>543
> nginxのtry_grepでディレクトリしていしてないからかなと思ったのですが、そもそも指定されてる。

もしかして: try_files
というか nginx の設定の問題であって Laravel は関係ないよね
0553nobodyさん垢版2015/07/26(日) 14:37:43.73ID:Z7kp1tNf
>>550 >>551

>publicはあくまでも通常のサイトルートであって
>そこにはwebサーバ(NginX)が直接処理できる形のファイルを置く
具体的にはcssやjsだな
了解です。public配下にファイルを置く事自体は問題ないのですね?
ただ、自作phpやhtmlを置くlaravelの動作に影響があるかもしれないから辞めた方が良い。
ということですかね。

>またviewファイルをLaravelのルーティング経由で読ませようとしたってダメ
.blade.phpは上に書いたように「phpじゃない」んだからな
説明不足で申し訳ない。viewのテンプレートを吐かせる関数を噛ませて表示をしています。
別に、「(laravelの記述ルールを無視して)viewのファイルをインクルードしたけど失敗する。」
「PHPライブラリを作ってpublicに配下に置いたけどけど使えない。」
と言っているわけではありません。

>>552
>もしかして: try_files
すみません。try_filesの間違いです。
>というか nginx の設定の問題であって Laravel は関係ないよね
それも、そうだと思います。
何か話の取っ掛かりになればと思い書きました。蛇足だったかもしれません。

今やりたいこと(publicディレクトリ配下に実ディレクトリを設置できるようにする方法)を調べると、
nginxの設定を変える方法しか見つからなかったので試した事を共有したかっただけです。
laravelだけで実装する方法があるのであれば、ぜひお聞きしたいです。
0554nobodyさん垢版2015/07/26(日) 14:47:30.51ID:???
>viewのテンプレートを吐かせる関数を噛ませて表示をしています。

ここがわからない
bladeを直接書くんじゃなくて
ある関数の出力がbladeの文法に従ったテンプレートになってるわけ?
具体的にどうやってviewを返してるの?
return view(some_function());とか
return view('pc/some_view.php/');
みたいなことをやろうとしている?
それとも
return some_function();
で、some_function()の返り値がbladeテンプレートとか?

ちなみにどれも動かないからね
0555nobodyさん垢版2015/07/26(日) 14:49:50.29ID:???
そもそも
>viewのテンプレートを吐かせる関数を噛ませて
みたいなことをしなくて済ませるための「テンプレートエンジン」なんだから
多分すごく無駄な労力を費やしてるんだろうな
0556548垢版2015/07/26(日) 15:18:23.40ID:???
だめだわ。言ってる意味がさっぱりわからん。

>今やりたいこと(publicディレクトリ配下に実ディレクトリを設置できるようにする方法)を調べると、

ってのが何を指してるのか、全くもって理解できん。
public_path(pc/pc.css)でパスが取れるけど、アクセスすると403になるってこと?
それともpublic/pc/ディレクトリそのものにアクセスしたいってこと?

例えばnginxでServerディレクティブにこんなかんじで書いて、
root /var/www/html/laravel/public;

ファイルが存在しない場合はこんなかんじでphpを実行。
location / {
try_files $uri $uri/ /index.php$is_args$args;
} # location /

みたいにしとけば、普通動くと思うんだけど。
0557552垢版2015/07/26(日) 15:31:47.54ID:???
>>553
> laravelだけで実装する方法があるのであれば、ぜひお聞きしたいです。

だから Laravel は関係ないと言ってるじゃないw

> nginxのtry_grepでディレクトリしていしてないからかなと思ったのですが、そもそも指定されてる。

try_files にディレクトリを列挙しちゃってるから
index.php にフォールバックできてないでしょ?
0558nobodyさん垢版2015/07/26(日) 23:06:36.30ID:HqKZ3pMp
>>554
pctop.blade.phpというviewファイルを作って、rootes.phpにView::make('pctop')と書いて読んでいます。
噛ませた関数というのが「View::make」です。

>>556
>public_path(pc/pc.css)でパスが取れるけど、アクセスすると403になるってこと?
>それともpublic/pc/ディレクトリそのものにアクセスしたいってこと?
前者の事をやろうと思っています。
nginxのコンフィグに、「$uri/」が無いから403ではじかれていると思い、書いていただいたコード同じ設定をするつもりでした。
ただ、今使っている環境のnginxコンフィグにはすでに書いていました。参考程度の話ですが、homesteadで構築した環境です。

>>557
読解力が無くて申し訳ない。てっきり、今の話はnginxの話だからスレちがいだよ?と言われてると思って、laravelに話をもどそうと思ってました。

>try_files にディレクトリを列挙しちゃってるから index.php にフォールバックできてないでしょ?
理解力が無くて申し訳ないです。
それは、優先順位の設定に問題があり、分岐処理をするはずのindex.phpに遷移する前に、
本来lravelが取らないindex.php以外のファイルにアクセスしてるんじゃないか?
と言っていますか?
0559552垢版2015/07/26(日) 23:38:02.59ID:???
>>558
そうそう
nginx の try_files ディレクティブの説明を読もう
0560nobodyさん垢版2015/08/02(日) 03:22:21.94ID:???
検索条件のPOSTパラメータをフォームに復元したいのにできません。

具体的にはwithInput()がView::makeだと使えません。Redirect::toは使え、blade側でInput::old()で取得できました。
しかし今度はRedirect::toだとページネーションで次ページ移動すると検索条件がクリアされてしまいます。

バージョンはlaravel5です。
0561nobodyさん垢版2015/08/02(日) 03:23:29.30ID:???
解決方法教えて頂けないでしょうか。。
0562nobodyさん垢版2015/08/02(日) 14:15:30.44ID:???
リダイレクトに対する理解の混乱が見られる

リダイレクトは302や301のステータスコードでHTTPレスポンスを一度返し
、クライアントからもう一度新しいHTTPリクエストが来るようにするもの。

その際、
ステートレスなHTTPではリクエストをまたいで状態(今回は入力)を保存できないので、セッションに一度格納し、次のリクエストで取り出せるようにする。

Laravelでそのセッションへの一時保存を簡単に実現するのがwithやwithInputの役割。セッションに保存した古い入力を取り出すのがInput::old()なわけ

対してView::make()はテンプレートを用いてレスポンスのbodyを作成するだけなので、リクエストをまたがない。そのリクエストの入力を取得するならInput::all()でも何でもいいし、
わけあって次以降のリクエストに入力を渡したいならwithInputではなく、明示的にセッションに保存すればいい


検索はサーバのリソースに変更を加えないのが普通だと思うので、クエリストリングが長すぎてIEの上限に引っかかるなどの特段の理由がないならGETにしたほうがいい
ページネーションの際の検索条件保持もより簡単だと思うが
0563nobodyさん垢版2015/08/02(日) 15:09:46.99ID:???
なんでリダイレクトで検索ページ作ろうと思ったんか、その発想が不思議だw

普通にgetでurlにパラメータ渡して、$keyword = Input::get('keyword')で取れる。
0564nobodyさん垢版2015/08/03(月) 01:30:18.00ID:???
>562、563さん
レスありがとうございます!

それでは検索でGetを利用し描画時にフォームの内容を復元するには、ビューにどのように値を渡し、どうやって取り出せばよいのでしょうか?
検索条件が多いため簡潔な書き方にしたいです。

562さんの説明のお陰でリダイレクトの仕組みは分かったのですが、いつwithやwithInputを使うのかが分かりません。

ご教授頂けないでしょうか。。
0565nobodyさん垢版2015/08/03(月) 14:12:16.68ID:???
自分でこうじゃないかなと試すのはいいけど、
まずはセオリーとしてどのように先人が作っているのか調べるべき。
特に検索なんて、誰でも実装するもんなんだし。

googleでlaravel searchでググって出たページ
http://stackoverflow.com/questions/19612180/creating-search-functionality-with-laravel-4

これみたいにして、$q = Input::get('myInputField');の$qをView::make()でビューに渡してもいいし、
テンプレート使ってれば$this->layout->keyword = $qみたいにしてもいいし。

ビュー側でurlも簡単にできる
{{$results->appends(array('keyword' => 検索ワード))->links()}}
0566nobodyさん垢版2015/08/04(火) 12:52:42.06ID:???
565さん

ありがとうございます。
英語が苦手でstackoverflowとか海外の掲示板に辿り着くと
解決可能なことがわかるくらいで
なんとなく分かったような分からないような感じで
試行錯誤してるうちで出来てしまうことご多いです。
それって先人の知恵を生かしてるとはいえませんね。。
これから努力してみます。

ページネーションが生成するurlにパラメータを付けられるんですか!勉強になります!

画面からのリクエストをテンプレートに渡す方法ですが、フォーム一つずつでInput::get()で取り出すのではなく、Input::all()を渡してよしなに処理してくれるような方法はないでしょうか?
0567nobodyさん垢版2015/08/05(水) 00:17:44.83ID:???
565さん

教えて頂いた方法で解決できました。
ありがとうございました!

□コントローラー
@$変数=Input::get('パラメータの名前')としてフォームの入力をコントローラーで受けとる
AView::make('ビュー名')->with('パラメータ名'=>$変数)->with(次のパラメータ)->with(次のパラメータ)としてフォームの値をビューに渡す

□ビュー
B<input type='' value={{ $変数名 }}>としてフォームの値を復元
C$ページネーションの変数->appends(['パラメータ名'=>$変数,次のパラメータ])->render()

としました。

パラメータが増減したときに@〜C全てに修正が必要なことが不安ですがやりたいことはなんとか実現することができました。
0568nobodyさん垢版2015/08/05(水) 00:32:04.63ID:???
560で質問させて頂いたものです。

Whoops, looks like something went wrongというメッセージをカスタマイズしたいのですが出来なくて困っています。

Googleで検索すると全く同じことをしたい人がいて、解決したようなのですが英語で書かれていて読めません。

https://laracasts.com/discuss/channels/laravel/change-whoops-looks-like-something-went-wrong-page

どうも、resources/views/errors/{404,500}.blade.phpを作るといいというように書いてあるようなのですが、試してもエラーメッセージは変わりません。どうしてでしょうか。。。
0569nobodyさん垢版2015/08/05(水) 19:26:12.78ID:???
「laravel カスタムエラーページ」でググろう
0570nobodyさん垢版2015/08/06(木) 21:53:30.30ID:???
569さん

出来ました!ありがとうございます!
0571nobodyさん垢版2015/08/19(水) 18:16:29.32ID:???
本番環境と開発環境を分けるのに、.env ファイル以外で設定する
方法はありますか?
ホスト名で自動判別したいんです。
0572nobodyさん垢版2015/09/06(日) 04:40:09.61ID:???
初めてLaravelを勉強してるのですが
オートロードってどういうことでしょうか?
0574nobodyさん垢版2015/09/17(木) 20:47:18.51ID:???
laravel new hoge
これで作られるプロジェクト内にvendor入れられる設計が気持ち悪すぎ
0575nobodyさん垢版2015/09/18(金) 13:16:58.90ID:???
好きなとこに移したらいいじゃない
0576nobodyさん垢版2015/09/18(金) 19:09:24.00ID:???
V4からV5になって、ディレクトリ構造が変わったりモデルが
なくなったり。

こんな大きな変更があったら怖くて使えないよ。
0577nobodyさん垢版2015/09/18(金) 20:33:56.50ID:???
たしかにごっそり変わったよね。
4からだから、他のバージョン知らないけど、
バージョンアップのたびにこんなんだと確かに使う気しない。

毎回こんな互換性一切ない感じでアップデートしてるんだろうか?
0578nobodyさん垢版2015/09/18(金) 21:43:41.52ID:???
5.0から5.1ですら
結構コード書き換えが必要なレベルの変更あったからなあ
5.1は一応ロングタームサポートで
2年だか3年は仕様を固定するというが
裏返せばその次はまた
変える気満々ってことかと勘ぐってしまう
0579nobodyさん垢版2015/09/19(土) 19:12:47.50ID:???
変える気満々か・・・
そうだろうな。

Laravelの開発体制って、個人または少数人でクローズドな開発してるの?
0580nobodyさん垢版2015/10/03(土) 12:24:07.14ID:???
2年だか3年は仕様を固定するだと???
その先はまた変更???

世の中に公開した仕様は、普通下位互換性を考慮するだろ。
0581nobodyさん垢版2015/10/03(土) 21:46:13.81ID:???
使うのも自由使わないのも自由
文句があるならフォークして自力でメンテすりゃいい
0582nobodyさん垢版2015/10/06(火) 14:53:45.39ID:4ZKDqCbK
laravelを触り始めたばかりなのですが
laravelの場合、
同一サービスで、ユーザーサイト、管理者サイト、代理店サイト等を作る場合
その数に応じてプロジェクトを複数個作るのが一般的でしょうか

それともviewやcontroller直下にuser,admin,agent等のフォルダを作って
Routeで切り分けていくのでしょうか

アドバイスもらえると助かります。
0583nobodyさん垢版2015/10/06(火) 18:31:36.48ID:gki7Fl/O
同じサービスなら、プロジェクト一緒の方がいいでしょ。
viewsとかcontrollersの下は、好きな方針で整理すればいいと思うよ。
0584nobodyさん垢版2015/10/07(水) 12:50:21.54ID:rVdyiLOO
>>583
アドバイスありがとうございます。助かります。
0585nobodyさん垢版2015/11/07(土) 17:33:50.81ID:sT3wDnc5
\(^o^)/
0586nobodyさん垢版2015/11/12(木) 15:55:31.63ID:???
ララベル本評判どうなの?
既に特に問題なくサイト構築できるんだけど、買ってみる価値あるかな?
0587nobodyさん垢版2015/11/13(金) 09:02:58.62ID:???
ないと思う。ドキュメント十分揃ってるし、ドキュメント以上を求めるならgithubでLaravelプロジェクト見て回ったほうがずっと勉強になる
0588nobodyさん垢版2015/11/13(金) 09:27:29.60ID:???
年明けに本でるしボリュームも今でてるやつは少ないから買うタイミングとしては微妙。
0589nobodyさん垢版2015/11/13(金) 20:11:15.18ID:???
>>588
>年明けに本でるし
のソース教えてもらえる?
0590nobodyさん垢版2015/11/13(金) 21:17:09.20ID:???
Laravel リファレンス[Ver.5.1 LTS 対応] Web職人好みの新世代PHPフレームワーク
出版社: インプレス
発売日: 2016/1/8

ttp://www.amazon.co.jp/dp/4844339451
0591nobodyさん垢版2015/11/13(金) 21:50:27.16ID:???
>>590
おお、早速ありがとう!
これは期待。
0592nobodyさん垢版2015/11/13(金) 22:47:22.79ID:???
本当は11月予定だったのにな
0593nobodyさん垢版2015/11/14(土) 10:33:39.50ID:/2PS9x0o
転職の際に必ず思い出してください。
下記の条件が全て当てはまる会社にご注意下さい。

・IT系 in 東京
・転職会議で2.5点
・転職会議の「その他>2ch情報」の欄で過去の労基2chスレが表示される
0594nobodyさん垢版2015/11/14(土) 11:01:15.89ID:???
お、いろいろ情報が。
来年はじめに出るなら、それ買うか。
できれば正月の暇な時間に読みたかったけど、しゃーないなw
0595nobodyさん垢版2015/11/25(水) 17:36:07.68ID:5K6/A757
PCに大量のファイルをダウンロードしたくないので
dreamweaverを使いたいのですが、
dreamweaverで
SublimeTextやPHPStormみたいに
ide helperのようなコード補完は出来ないのでしょうか
0596nobodyさん垢版2015/11/28(土) 09:04:42.64ID:???
>>594
正月休みの入門なら最近みつけたブログがいいかも
今日も更新あったし、ソースもgitで手に入る

つ larajapan
0597nobodyさん垢版2015/11/28(土) 09:34:22.66ID:???
>>596
覗いてみたが、全然コンテンツないぞ。
更新止まっちゃってるけど、ララ帳超えるくらいじゃないとな。
0598nobodyさん垢版2015/11/28(土) 11:46:50.56ID:???
>>597
Feedlyで新着通知があったから話題にだしたんだが
0599nobodyさん垢版2015/11/28(土) 13:09:48.56ID:???
最新の記事が今年の11月22日なのに、これで更新止まっちゃってるなんて宣う低能のいうことなんか聞くことないよ
最新記事しか見てないんだろ
コンテンツの量もそれなりにあるし
0600nobodyさん垢版2015/11/28(土) 15:38:55.82ID:???
という自作自演の宣伝でしたとさ
0601nobodyさん垢版2015/11/28(土) 16:31:03.95ID:???
更新止まってるっていうのはララ帳の話。

site:検索でインデックスされてるページの量を見る限り、
www.larajapan.com → 27ページ
laravel10.wordpress.com → 321ページ
と、10倍以上の開きがある。

つうか、たかだか27ページ(インデックスページ含む)で、
「コンテンツの量もそれなりにあるし」って、
一体何のステマだよ。
0603nobodyさん垢版2015/11/28(土) 17:56:47.31ID:???
必死になると長文になる典型的な例ですね^~^
0604nobodyさん垢版2015/11/28(土) 21:24:15.43ID:???
何をそんなに反発してんだか
ステマだと仮定しても何が悪いの?

ブログが書籍原稿で、読者が無料校正協力者になること?

書籍ってもう10年以上前から成り立ってないよ

MS-DOSの頃は俺なんかでも稼がせてもらったけどさ。文章かける技術者ってだけで需要があった時代

技術書なんて今、初版3000あるかな?
もう初版刷り部数まるごと印税くれる出版社もないんじゃね? 知らんけど
0605nobodyさん垢版2015/11/28(土) 21:30:21.54ID:???
いかん、長文なっちったwww
0606nobodyさん垢版2015/11/28(土) 22:46:00.08ID:???
単純に有益な情報を紹介する人=神
それ以外=ゴミ

ほっとくよろし
0607nobodyさん垢版2015/11/28(土) 22:48:46.62ID:???
>>597だが、確かにオレがケチ付けちゃってるな、これは。
すまんかった。

「新刊の代わりに正月休みに読めるもの」を>>597が勧めてたとして、
いや、それには分量が違いすぎない? と思ったんで書き込んだ。

もちろんLaravelの新しい入門サイトが出てくるのは大歓迎だよ。
もしlarajapanの著者が俺の書き込みを見て不快に感じたのであれば、申し訳ない。
0611nobodyさん垢版2016/01/14(木) 20:57:46.58ID:???
4500円はけっこう高いね。
と思ったら450ページもあるな。
技術書としてはこんなもんじゃね?
0612nobodyさん垢版2016/01/15(金) 09:58:54.60ID:???
本はどうだった?俺も今日見に行く
0613nobodyさん垢版2016/01/19(火) 01:38:00.38ID:5pfMdZHM
Bladeテンプレートの
@forelse($arr as $key => $value)
//
@empty
//
@endforelse

みたいな時の@emptyの使いどころがいまいちわからない
0615nobodyさん垢版2016/02/03(水) 21:34:44.69ID:TUInXlH7
Webサービス開発ってなんですぐ飽きるんだろうな
一番JS書いてるときが楽しいとか異常だろ
0616nobodyさん垢版2016/02/03(水) 21:40:11.38ID:???
Laravelなら簡単すぎるからだろそりゃ

JSめんどいわ、俺は嫌い
Angularでも使えばいいんだろうけど
細い部分は結局手で書くから
覚えることが増えるだけになりそうな気が
0617nobodyさん垢版2016/02/06(土) 10:15:38.08ID:oqchQKOG
fuelと比べていいとこって何?
0618nobodyさん垢版2016/02/08(月) 10:19:55.68ID:mP2plvo7
fuelとは別物だけど比べるとすると
diコンテナフル活用
フレームワークのテストがきちんとある
疎結合にしやすいからテストコードが書きやすい
dbとか他のコンポーネントは好きなライブラリに入れ替えok

ファサードはfuelっぽく見えるけどstaticじゃないから
そもそもが全く違う
0619nobodyさん垢版2016/02/08(月) 19:11:48.33ID:???
オレオレフレームワーク使ってたんだけどさ、
いっちょ最新の勉強するか!って上に出てた本買って読んでみたけど。

なるほどわからん。ということしか分からなかった。
俺には無理だわ。
フレームワークの初級でおすすめないですか?
0620nobodyさん垢版2016/02/08(月) 19:32:56.20ID:???
なにがわからんのか、わからんのでアドバイスしようが無いw
上の本でわからないと、Laravelは向かないかもね。
日本語の解説本は全然でてないから。

俺は公式ドキュメント見ながら勉強したけど、最初結構つまずいた。
だけど、わからん単語、一つ一つググって読み進めればわかるべ

全くわからんなら、まずはCakePHPでもやったら。
初心者向けの本も腐るほどある
0621nobodyさん垢版2016/02/08(月) 20:58:23.56ID:???
ラクするためのものなんだから
結果的にラクできなきゃ覚える労力が無駄なだけ
本を読んでもさっぱりわからんのでは
楽できそうかどうかの判断もできんだろうに
0622nobodyさん垢版2016/02/08(月) 22:19:13.06ID:???
もうちょい続けてみます。
知らない単語がでると、苦手意識があるのがいけないですね。
5.2はこの書き方が非推奨になりました。とかサンプルに書いてあって、は?もう??公式見ないとダメか?で、
公式見て更に分かんなくなって、あかん状態でした。

まずは一通り読んで触ってから決めたいと思います。
とりあえずオレオレフレームワークはフレームワークと呼べないレベルでした。。
0623nobodyさん垢版2016/02/09(火) 01:43:51.70ID:???
laravelはわりと仕様が変わりまくるから、そういう意味では使いにくいかもね
0624nobodyさん垢版2016/02/09(火) 19:27:34.99ID:???
そういった非推奨になりましたとか、例外もありますってのは、技術書には良くある。
そんなもんは全体から見れば些細なことだ。
まずは全体を俯瞰するようにザーッと読み進める。
で、2回目、3回目に読みなおすときに気になったら調べ直したらいいんだよ。
0625nobodyさん垢版2016/02/13(土) 03:02:29.76ID:PnMLXJ8v
今だと
Slimとかがいいんじゃないかな
コンパクトで勉強のために最初にやるには
もっと大規模なフレームワーク勉強したいっていうならCodeigniterが
初見にはとっかかりやすいって聞いたことあるようなないような
てかLaravelのドキュメントでわからないってy
0626nobodyさん垢版2016/02/13(土) 09:23:01.60ID:???
PHPってのはもともと良くも悪くも緩い言語で
俺なんかもそこが好きなクチなんだが
あまりにも普及しすぎてここ何年かは
「もうちょっとキチンと集団行動のことなんかも
考えてくれないと困りますねー」
みたいな空気になってる気がする
Java的なスーツ着てタイムカード押してみたいな雰囲気ね
言語仕様そのものもそっち方面の拡充が著しい
典型的には引数の型指定がスカラー型でもできるようになったり
まともなクロージャーが使えるようになったり

Laravelはまさにそういう過渡期に発展してきたわけで
空気の変化をもろに受けてるように思う
最初の頃はPSR?どうでもええやんー
名前空間?ユーザーは気にせんでもよろしおまんがなー
みたいな感じだったのが
どこに出しても恥ずかしくないくらいに「キチンと」してきてる
でもそこが古いタイプの(なんでもアドリブでこなしてきたような)
PHPプログラマーには馴染みにくい要因なのかなと思ったりもする

まあ他のフレームワークもそのへんの事情は同じなんだろうけどさ
超長文失礼
0628nobodyさん垢版2016/02/19(金) 20:38:12.29ID:h76Yl8/d
Laravel5.1からのディレクトリ構造は好きだね
PSR-4とclassmapのいい感じの使い具合がプログラマの妙だね
0629nobodyさん垢版2016/02/22(月) 14:53:09.39ID:???
妙なプログラマーなら俺もその一人だが
0630nobodyさん垢版2016/02/24(水) 17:43:58.43ID:???
.
.
板違い(?)の上に、話をさえぎってしまいゴメンナサイ!(*_ _)人
でも、この板のユーザーさんにも有意義な告知かと思うのでカキコませてください。

★ 謝礼は十分いたします ★ アメブロなどのサイト制作ができる方!! 

アメブロなどを使用してのサイト制作のできる方を早急に求めています!
私はリケジョやPC女子からはほど遠く、サイト作成にはまったく疎いのでとても不自由しています…(> <;)
そこで私に代わりサイトを作成してくださる方を求めてこの場をお借りしました。

■サイトの内容…
アダルト系、違法性、その他公序良俗に反するものではありませんのでご安心ください。

■サイト制作の仕様ベース…
アメーバブログで十分です。願わくばwordpressなどのブログ形式のサイトを希望します。
それに準ずるもので使い慣れたものがあれば別のものでも構いません。

■条件はありません…
技術さえお持ちでしたら、学歴・職歴等は一切問いません。
フリーター、ニート、高齢ニート、コミュニケーション障害をお持ちの方、引きこもりの方、中年失業者、長期無職等、歓迎!

■作業形態…
作業は在宅でやって頂くことになりますので、時間の指定は一切ありません。別のお仕事の傍らに…でもOKです。

■詳細をお知りになりたい方は…
下記メールアドレスまでご連絡ください。詳しく書いた返信文を差し上げます。

※真剣な告知です。冷やかしはご遠慮ください。

井 上
inoue1952w★gmail.com
迷惑メール対策のため@部分を★にしてあります。
実際に送信する際には★を@マークに変えてください。
.
.
0631うんこぶりぶり垢版2016/03/05(土) 11:11:33.56ID:+fEYl8zX
Laravelというかフレームワーク自体が俺は好きじゃない
どんどんコード肥大化していって何が何やらわからなくなる
それで別サービスにわけてAPI使ってなんたらとかもウザい

といってもフレームワークを使わず
素のコードでも嫌い
見てられない

結局何がいいたいのかというと
プログラミングなんて嫌いだってことだ
0632nobodyさん垢版2016/03/05(土) 11:58:03.81ID:???
1から作るのが嫌いだから、Laravel使って楽するんだろうに。
俺だってプログラミングするよりも、美人なねーちゃんと酒飲んでる方が好きだよ
0633nobodyさん垢版2016/03/05(土) 13:21:50.55ID:???
使うことによって
「いかに楽した気になれるか」
という自己満足の部分が大きいな
その点Laravelはいい線行ってると思うわ
0634nobodyさん垢版2016/03/05(土) 14:25:48.92ID:???
でも結局そのフレームワークを理解してる者じゃないとメンテできないというジレンマ
0635nobodyさん垢版2016/03/07(月) 21:40:19.44ID:???
フレームワークと言わずそもそも言語ってそういうもんやろ
文法そのものは全部Cベースで基本同じ
違うのは関数群や標準ライブラリ、環境の類
JSやるなら嫌でもDOMやCSSのことは知らにゃならんし
PHPなら山ほどある(しかもまるで統一感のない)関数群のリファレンスが必須

少なくともLaravelなら読むのはグンと楽になるだろ
実際にメンテするのは慣れてる人じゃないと
確かに結構大変だと思うけどな
0636nobodyさん垢版2016/03/08(火) 20:34:05.39ID:???
なんにせよ、どこの馬の骨が書いたかわからん絡まったコードを紐解く作業よりは、
Laravelの書式を覚えるほうがずっと楽
0637nobodyさん垢版2016/03/14(月) 23:46:17.38ID:???
Microsoftこそこの世の正義と信じてるような人種は
フリーのフレームワークなんぞ馬の骨と本気で思ってたりするから怖い
そしてLaravelの開発者が元.NET開発メンバーと知ると手のひらを返したりする
まあそんな連中はそもそもPHPを使わんがw
0639nobodyさん垢版2016/03/15(火) 01:25:31.98ID:???
asp.netじゃね?知らんけど
0640nobodyさん垢版2016/03/15(火) 08:52:31.64ID:???
C#っぽい部分が割とある。ただ、それの実現にマジックメソッド使ってるせいでIDEの補完がお察しという印象。
言語機能の差があるからなあ。
0641nobodyさん垢版2016/03/15(火) 12:05:32.86ID:???
どういうところがC#ぽいのか知りたいです!
0642nobodyさん垢版2016/03/26(土) 11:36:47.07ID:KniYU/rm
日本語の本、他には出ないのかな?
0643nobodyさん垢版2016/03/26(土) 12:36:26.04ID:???
海外に比べてなぜかくそ盛り上がってない。
たしかにLaravelじゃなきゃいけいない理由はないんだけども
日本は新しい技術を取り入れる柔軟性がないのかもね。

とかく学習コスト、ランニングコストを気にして現状維持でガラパゴス化する。
気がついたときにはiPhoneみたいな黒船に全部かっさらわれるという連鎖。
アメリカのエンジニアの倍くらい働いて、半分程度しか給料もらえないから、
そんな余裕もないのかもしれんね
0644nobodyさん垢版2016/03/26(土) 14:39:54.14ID:???
勤務中に新しいフレームワークの勉強なんぞしてたら怒られるしな
片手間に学べるほど学習曲線の緩やかなものでもない
ガラパゴスなプログラマにとっちゃね
0645nobodyさん垢版2016/03/26(土) 14:52:44.81ID:???
laravelを選択する人って公式ドキュメント読んで大体使えるから書籍あんま必要としてないんじゃないの…
0646nobodyさん垢版2016/03/26(土) 16:11:24.06ID:???
Googleは勤務時間の10%で、必ず業務外のことしないといけないんだっけ?
割合は忘れたけど、そんな制度があったはず。

一方そのころ日本では焼きそばを作らせていた
0647nobodyさん垢版2016/03/26(土) 16:22:44.81ID:???
バージョンアップ早い割に大規模な変更多いし日本語の情報も無いからガチでやってない奴はきついと思う
0648nobodyさん垢版2016/03/26(土) 18:46:52.47ID:???
まあしかしここんところはそんな激しい変更も必要ないじゃん

そんでちゃんと使えるようになると万能感ハンパないわ
一人でいきあたりばったりにやってるからDIやテストは活用してないけど
一人でもそのへんきちんとしたほうが本当はいいんだろうな
0649nobodyさん垢版2016/03/26(土) 20:43:01.47ID:zEMbv6Qg
そろそろ書籍でて欲しい
0650nobodyさん垢版2016/03/26(土) 22:01:43.23ID:???
いや、5になったときに、ごっそり変わったけど。
でもしばらくはサポートするらしいから、書籍化とか、勉強するなら今だよね
0651nobodyさん垢版2016/03/26(土) 22:52:25.16ID:???
ディレクトリ構造とかど派手に変わったりして面を食らうけど
ガイドに従うだけであっさり移行できたんで
追従が大変という印象がほとんどないや

>>640
laravel-ide-helper入れても警告だらけになるのは嫌よね
実装上変え辛い部分だろうし、6辺りで対応してもらえるといいな
0652nobodyさん垢版2016/03/26(土) 22:58:01.72ID:???
5になったのなんて随分前じゃんw
最近ってのは5.1とか5.2の話ね
0653nobodyさん垢版2016/03/27(日) 23:53:21.03ID:???
なんていうかララベルって響はいいよな。
なんか、ピクニックみたいな楽しいリズムがあるよ。
コードイグネイターやら、ケークなんて響よりずっと良い。
0654nobodyさん垢版2016/03/28(月) 02:43:08.05ID:???
昔、魔法少女ララベルってアニメあったな
0655nobodyさん垢版2016/03/28(月) 21:11:12.48ID:???
クエリビルダーで質問なんですが、
...->union($users)->where('id','1');
というように書いてunionで結合した後にその結果を
条件で抽出したいのですが、
投げられているSQL文を見るとなぜかwhere('id','1')されてから
union($users)されています。

これはクエリビルダーの仕様なのでしょうか?
0656nobodyさん垢版2016/03/28(月) 21:59:42.83ID:???
順序は関係ないだろうな
Laravel的なやり方からするとそういう場合
クロージャの中にUnionを入れることになりそうだが
実際selectにクロージャを入れられるかどうかは知らない
0657nobodyさん垢版2016/04/03(日) 21:17:17.61ID:???
Schema::create('profiles', function (Blueprint $table) {

$table->increments('id');

$table->integer('user_id')->index();

$table->foreign('user_id')
->references('id')
->on('users')
->onDelete('cascade');

$table->string('mouse');

$table->string('keyboard');

$table->timestamps();

});

こんな感じのプロフィールを作成しようと考えています。
protected $fillableの場合は、mouseとkeyboardだけで良いと思いますが、
protected $guardedの場合は、どれを指定しておけばよいのでしょうか?
(mouseやkeyboard以外にも追加するとき、いちいちfillableに追加するのが面倒なので)

timestampsなどは自動的にguardedされていませんよね?

このへんの詳細がドキュメントなどに載っていなかったので質問させていただきました。
0658nobodyさん垢版2016/04/03(日) 22:14:10.41ID:???
guardedプロパティは初期設定がワイルドカードだからノーガード戦法するなら空配列で上書きかな。まあ存在しないカラムに値を代入されたらアウトなので、これだけだと入力チェック必須だよね。

Modelのブート時とかにDB参照して自動的にカラム名持ってくるのはできなくもないかな?


初期設定の値からして、guardedプロパティをワイルドカード、fillableプロパティを最小限で使うのが暗黙的な推奨。

その上で利用の都度、値を1つずつ代入するか、Model::fillable()メソッドを呼び出してfillableを上書き・複数代入できるフィールド名を明示的に指定するかが安全。

と言っても利便性と安全性はトレードオフなので、
1つのモデルに対して複数の新規登録、更新アクションがない場合はfillableプロパティ直指定で済ませる、といったところ。

たまにfillable指定し忘れてキーってなるのは安全のためと思って我慢
0659nobodyさん垢版2016/04/03(日) 23:10:07.07ID:???
ありがとうございます。
とりあえずはfillableでいこうかと思います。
0660nobodyさん垢版2016/04/04(月) 17:36:02.77ID:???
Schema::create('profiles', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id') ->unsigned();
$table->string('mouse') ->nullable();
$table->string('keyboard') ->nullable();
$table->timestamps();

$table->foreign('user_id')
->references('id')
->on('users')
->onDelete('cascade');
});

上記のprofilesテーブルに、ユーザー登録時に同時作成(mouseとkeyboardはnull)するにはどうすればよいでしょうか?
profile用のフォームなどは用意せず、ただ単にregisterでユーザー登録された際に、user_idとtimestampsが挿入されるようなシステムにしたいです。
0661nobodyさん垢版2016/04/05(火) 12:05:26.55ID:???
public static function boot()
{
parent::boot();

self::created(function($user)
{
$profile = new Profile();
$user->profile()->save($profile);
});
}

このコードぶっこんだら出来ました。失礼しました。
0662nobodyさん垢版2016/04/05(火) 17:49:00.86ID:???
laravelのftpクラスとかありますか?
0663nobodyさん垢版2016/04/07(木) 08:49:25.07ID:???
そういうのはstorageでやるんだろうなあ
実際のファイルの物理的な場所は
下位のドライバに任せるという発想
0664nobodyさん垢版2016/04/09(土) 18:29:01.00ID:???
5.2のmake:authでviewに {!! csrf_field() !!}と書かれていたのですが
結局は!マーク無しと変わらないんですかね?

どちらが正しいのでしょうか?
0665nobodyさん垢版2016/04/13(水) 22:33:21.55ID:???
!あるとエスケープしない
ないとエスケープする
0666nobodyさん垢版2016/04/17(日) 04:02:12.44ID:???
しかし5.2になって認証周り楽になったよなぁ
0667nobodyさん垢版2016/04/17(日) 10:42:26.29ID:???
うんうんadminと分けやすくなってほんとうれしいよ
0668nobodyさん垢版2016/04/17(日) 10:46:37.12ID:???
んなもん、ユーザーIDで分ければいままでだって簡単やん
0669nobodyさん垢版2016/04/17(日) 10:49:10.39ID:???
別テーブルがうれしいなって。
0670nobodyさん垢版2016/04/17(日) 11:10:03.24ID:???
喜んでもらえて僕も嬉しいです
0671nobodyさん垢版2016/04/17(日) 11:40:14.73ID:???
PHPカンファレンス 未だにCakePHPerのがずっと多くて暗澹たる思いになった
海外から完全に取り残されてる感じ
一流なハズの人たちがそれまでの資産もあって Laravelになかなか移りたがらない
日本発なサービスがあんまない、あってもパチンコの市場くったソシャゲばっかりなのは
こういう保守性もあるんじゃないかと思ってしまった
0672nobodyさん垢版2016/04/17(日) 15:45:30.48ID:???
Cakeに比べてLaravel使うメリットって何なの?
0673nobodyさん垢版2016/04/17(日) 17:46:05.11ID:???
世界的ですもんね
乗るしかない このビッグウェーブに
0674nobodyさん垢版2016/04/17(日) 18:35:11.82ID:???
<input type="text" name="name" value="{{ old('name') or $user->name }}">
orで三項演算子になるはずが、なぜか1と表示されてしまう(データベースに存在しているのに)

{{ old('name') ? old('name') : $user->name }}
こっちは正常に動作

教えてドラえもん
0675nobodyさん垢版2016/04/17(日) 18:40:33.91ID:???
>>672
デザイナーあがりの自称エンジニアでも作れるかと
0676nobodyさん垢版2016/04/17(日) 19:40:35.32ID:???
>>674
or は論理演算子よ
評価対象の値をそのまま使いたい時は a ?: b
0677nobodyさん垢版2016/04/17(日) 20:34:23.14ID:???
>>674 は bladeのor記法のことを言ってるんだろう。
{{ isset($name) ? $name : 'Default' }}

{{ $name or 'Default' }}
のように書ける。
逆に言うとorの左辺はisset()に噛ますことのできる変数じゃないとダメ。

storage/framework/views下にbladeが吐き出したphpファイルがあるから見てみるといい。

{{ $name or 'Default' }}
の場合
<?php echo e(isset($name) ? $name : 'Default'); ?>
に変換されるけど
{{ old('name') or 'Default' }}
の場合
<?php echo e(old('name') or 'Default'); ?>
に変換される。
変換されたあとの「or」は >>676 の言う通り論理演算子。
old(’name’)がnullだろうがなんだろうが右辺がtrueなので結果はtrue。 echoで暗黙的にtrueが1に変換されて出力される。

と、いうかoldの第二引数にデフォルト値渡せるから
value="{{ old(’name', $user->name) }}
とするとプリティー。
0680nobodyさん垢版2016/04/19(火) 21:20:10.93ID:???
フレンドシップ機能を作るのはポリモーフィック一択ですか?
0682nobodyさん垢版2016/04/24(日) 09:47:57.94ID:cjecw+VC
5.1と5.2も結構違いあるよなぁ。
5.2はLTSじゃないから、すぐに保守されなくるし。
0683nobodyさん垢版2016/04/24(日) 12:22:20.03ID:???
1度覚えた知識でずっと使えるって前提がもう通用しないのかもしれんね。
新しく作るときは、ドキュメントを斜め読みして、勘所を理解する。
そういった知識より、知恵みたいなのが求められるのかも。
その点、Laravelは音速で日本語化してくれる神がいるから心強い。

LaravelでWebサービスを一から作れる人は、そんなの慣れっこかもしれんけど。
初心者向きではないね。
0684nobodyさん垢版2016/04/24(日) 14:15:01.74ID:???
マルチ認証まちこがれてたんで5.2

そうでないなら手を出すべきじゃない
0685nobodyさん垢版2016/04/25(月) 02:27:51.16ID:???
laravelはソース読むのが楽しい
オレオレ作ってみたくなる
0686nobodyさん垢版2016/04/27(水) 22:54:45.04ID:???
一部のバリデーションルールを、追加でなく、置き換えるにはどうしたらいい?

alpha_numやemailが使えないので
0687nobodyさん垢版2016/04/27(水) 23:28:11.89ID:???
>>686
あ、速攻で自己解決したった

publicじゃなくprotectで定義すりゃいいだけか
0688nobodyさん垢版2016/04/28(木) 00:09:09.79ID:???
symfonyと比べていいところ、悪いところを教えて欲しいです
どっち使うか迷ってます
0690nobodyさん垢版2016/04/28(木) 05:53:40.76ID:p+4kmhwo
結局はcomposerでコンポーネント管理してるだけで
別にフレームワーク間の違いなんて気持ち違うぐらいだろ
0691nobodyさん垢版2016/04/29(金) 18:16:53.98ID:???
日本だと今一盛り上がってないけど、
cakeを勢いで超える日は来るの?
0692nobodyさん垢版2016/04/30(土) 04:34:59.01ID:???
>>688
機能面で言えばSymfonyなんだろうが、
YMLとアノテーションの重厚長大な作りが疲れるんだよね
手間に合わないというか現実的じゃないというか…
それがLaravelに移行した理由
0693nobodyさん垢版2016/04/30(土) 14:56:23.62ID:???
resourceコントローラーのupdateメソットでカスタムリクエストを利用しているのですが、
rulesのuniqueにどう除外idを引き渡せば良いのか分かりません

teamsテーブルのチーム名(name)を更新する構造です。

public function rules()
{
return [
'name' => 'required|unique:teams,name,'.$teams.'|max:20',
];
}

putでteams\{$teams}に渡していますので、$teamsを参照できると思ったのですが
どうにもLaravel5では対応していない模様です。

どなたか教えて下さい...
0694nobodyさん垢版2016/05/01(日) 08:29:33.09ID:???
ルールの定義にRequestで渡した文字列を使いたいということ?
発想の根本が間違ってる気がするが・・・
0695nobodyさん垢版2016/05/01(日) 09:18:58.66ID:???
>>693

BasseCotrollerでrules定義を置換してるな
unique:user,email,{email},user_id
とか書けるように

↓なの作っておくといろいろ使える

/**
* 文字列中の {id} を$model->id で置換
*/
protected function replaceKey($str, $model)
{
if (preg_match_all('/\{([^}]+)\}/', $str, $matches, PREG_SET_ORDER))
{
foreach($matches as $m)
{
if (isset($model->{$m[1]})
{
$str = str_replace($m[0], $model->{$m[1]}, $str);
}
}
}
return $str;
}

スマホで書いたからタイポしてたらすまそ
0697nobodyさん垢版2016/05/01(日) 12:15:14.70ID:???
policyクラスでどうしてもfalseしか返ってきません。
policyのcreateメソッドには必ず第二引数の設定が必要なのでしょうか?
ダミーとして第二引数にBook $bookを入れて単純にtrueを返すだけにすれば、認可は成功しました。

//BookPolicy
public function create(User $user)
{
$book_count = $user->books()->count();
if ($book_count <= 3)
{
return true;
}
return false;
}

//book controller
public function create()
{
$this->authorize('create');
return view('book.create');
}


ログイン中のユーザーの本の数をリレーションでcountして、そして3冊以下ならtrueを返したいです。
0698nobodyさん垢版2016/05/14(土) 19:42:13.00ID:???
もしかしてresourceコントローラーだと
$router->model('user', 'App\User');
が使えない?
0699nobodyさん垢版2016/05/16(月) 18:22:55.13ID:???
authorizeForUserはblade側で操作できんのか?
0700nobodyさん垢版2016/06/17(金) 19:45:17.23ID:0ni1tzXz
              【Win10】    こんな犯罪級OS薦めんなよwww   ↓   【スパイウェア】


この使用許諾契約書には書かれています
”最後にあなたのコンテンツを含む個人データ(例えばあなたの電子メールの内容や―プライベート通信やプライベートフォルダ内のファイル)にアクセスし―開示し保全します”
開示する ここ重要だよ
契約がなければ通常 高度な違法行為になりうることです それはあなたが自分の意思としてこの契約書に同意したのです
https://www.youtube.com/watch?v=ZBwEmgdqB1c



「1910」 副島隆彦 2016年6月16日

大阪市や大阪府のバスの運転手が年収1000万円は許せない、600万円まで落とすと。
なぜなら、普通の労働者たちが年収400万円でようやく働いているのに、何でバスの運転手が1000万円ももらえるんだと。

このものすごくすばらしい主張があった。
これを言われると日本の民主党や共産党は非常に困るんです。
が、先ほど言ったように、金持ちたちの財産を相続税で国家が奪い取る、これを正面から本気でやったらほんとに橋下はたたき潰されました。

労働組合を押さえつけるまでは安倍晋三たちも大好きだからよかったんだけど、
自分たち自民党体制の、金持ちと地主階級、経営者を大事にするという自民党の基本骨格があるわけです。
0701nobodyさん垢版2016/09/02(金) 17:40:56.84ID:udqE/7kQ
Laravel布教あげ
0702nobodyさん垢版2016/09/03(土) 18:05:27.77ID:???
アップデートあったのか不安になる勢いだな
0703nobodyさん垢版2016/09/03(土) 19:26:15.20ID:???
5.3正規リリース来たのか
Vue.jsとの統合がどうなってるのかは気になるな
0704nobodyさん垢版2016/09/03(土) 20:38:17.86ID:???
Laravelは好きなのに最近のフロントエンドへの干渉がどんどん強くなる流れは嫌いだわ
ElixierにしろVue.jsにしろデフォでpackage.jsonに入れる必要性が理解できない
フロントエンド開発に任せるべき範疇だろ
0705nobodyさん垢版2016/09/03(土) 21:52:51.10ID:???
この細かい互換性とか気にせず、ばっさり切り捨てる感じ嫌いじゃない

Vue.jsってObjective-C初めて見たときみたいにひょぇぇぇ〜ってなるから、まだみたくないな
0706nobodyさん垢版2016/09/03(土) 22:39:07.63ID:???
いやなんだかんだ言ってフロントエンドの開発負荷ってデカいから
そこが組み込まれるのはありがたいわ
アングラーとか覚えるのと自分でゴリゴリ書くのと
どっちが早いか迷って後者を選んで泥沼化したりもしたし
フロントのコードにもLaravelなりのベストプラクティスを提示してほしいと思ってた
0707nobodyさん垢版2016/09/05(月) 18:08:44.11ID:rU0XF8Hm
好き嫌いはっきり別れてるのがまた面白い
0708nobodyさん垢版2016/09/05(月) 23:52:26.80ID:???
好きもの憂きもの定々と別れしことげにいとをかし
0710nobodyさん垢版2016/09/08(木) 22:11:04.23ID:???
4.2のdocsだとtemplatesで508の書き方が紹介されてるけど、
5.0からは@yield使ってるから今はこっちが主流でいいのか。
0711nobodyさん垢版2016/09/11(日) 09:33:28.61ID:pKL9BxyH
Vuejs なんて学習コストめちゃくちゃ低いだろ
0712nobodyさん垢版2016/09/12(月) 08:44:27.28ID:???
そうなの?なんかめんどくさそう
0713nobodyさん垢版2016/09/14(水) 01:18:29.84ID:at03GRgT
vuejs は付近のライブラリ含めてドキュメントが日本語化されてる。あとはコンポーネント的な概念を理解するのと、fluxは恐らく導入不可避になるので、fluxの概念になれるだけ。あとは開発環境さえ整っていればめちゃ楽です。
小から中規模まで、少人数で構築するSEO気にしないWebアプリケーション構築するなら充分対応できます。実装としてはLaravel関係ないけど、pagekitの実装が参考になるかと。

まぁ、ただ日本自体SPA前提の案件てなかなかないよね。
0714nobodyさん垢版2016/09/17(土) 00:53:57.05ID:???
ハイブリッドアプリとかデスクトップアプリケーションならjsにもいろいろ選択肢あって楽しいんだけどな。
ただサーバサイドエンジニアがフロントエンドもガッツリ攻めていくのはかなりの体力がいる
0715nobodyさん垢版2016/09/17(土) 05:31:50.86ID:???
大昔ならAccessでやったような業務アプリの案件を
流石に今からAccessでやる選択はないし
じゃあVBとかVCにMSSQLでやんのかつったらそれもまた(Windows自体の将来性に疑問符)
ということでいっそWebアプリでっていうのはごく自然な流れだと思うんだけど
実際やるとフロントエンドが大変すぎて死ぬよね
Access並みの手軽さでサーバサイドとデータバインドできるUIコンポネが一揃セットになってれば
一気に広まる可能性あると思うんだけどな
HTMLやFormのファセットをオプション化した流れはその逆のようにも思われる
0717nobodyさん垢版2016/09/17(土) 10:53:43.54ID:???
バックエンドがUIのデータバインディングまで面倒見るとか勘弁してくれ
2年経たずに手の付けられない負の遺産となる
0718nobodyさん垢版2016/09/17(土) 13:39:47.41ID:vn38yU9E
Windowsはビジネスユースなら今後もなくならんやろ
0719nobodyさん垢版2016/09/17(土) 22:48:49.48ID:???
最近の施策で.net案件のプロプラ不安は全部解消されたな。全力注いでるのが分かる
あとは受け入れられるかどうかと、キャッチアップが遅すぎる>>715みたいな老害のプライドをいかに刺激しないように説得するか。現場の手腕次第だな…
バカほど声が大きいからな
0720nobodyさん垢版2016/09/18(日) 01:20:28.14ID:???
ふむ
嫌味を返すなら全力注いでる=なりふり構わず生き残りに必死
ってところだけど
確かに現状のASP.NETは十分選択肢になりそうだな
サードパーティ製の業務アプリ向けUIコンポネなんかも
歴史が長いだけあってそこそこ整備されてるようだ
業務用ならゲイツプラットフォームという根拠のない思い込みも(発注側に)根強くある
こうなるとこの分野へのLaravelの浸透は難しいかもな
0721nobodyさん垢版2016/09/18(日) 13:13:41.93ID:JZF2WVvX
ReactだったりVuejsだったり、現状でもサーバーサイドレンダリングできるけど現実的ではない。
Vueも2.0でSSR対応できるみたいだけど、実用では使えないと思う。まだ1、2年かかる気がするし、時が経てば経つほどSEO目的のSSRは考えなくても良くなるだろうし。

今後バックエンドでは、いかに使いやすいAPIを作るかってとこが注視されていくんではないかと。
そこの領分がきっちり別れるようになると、バックエンドもフロントエンドも幸せにはなると思うね。理想論かもしれないけど。
0722nobodyさん垢版2016/09/18(日) 23:40:08.03ID:???
GraphQLってどうなんじゃろ
0723nobodyさん垢版2016/09/18(日) 23:45:39.64ID:???
>>717
今更のレスだがjQueryでBootstrapな基礎はもう変わらないんじゃね?
それこそASP.NETも(フロントはC#捨てて)そうなってるみたいだし
0724nobodyさん垢版2016/10/04(火) 09:54:48.11ID:???
APCでキャッシュしてるんだけど、教えて

・コンソールでphp artisan cache:clearとか、自作コマンドでCache::forget呼んでもキャッシュが削除できない。同じキーで取得はできる
・routes.php内で同じソースを実行すると取得も削除もできる

これって何が原因だろ?console経由だと読み込まないconfigとか実行ユーザの違いとか?
0725nobodyさん垢版2016/10/04(火) 10:18:03.18ID:???
>>724
apc.phpでキャッシュクリアできるかどうか試す。
できた場合→apc.phpで実行しているコードをコピペ。
できない場合→わからん。
0729nobodyさん垢版2016/10/08(土) 10:39:08.28ID:???
初めてlaravel使うんだけど、
全ページ、ルーティングしなくちゃだめなの?
静的ページが100ページくらいあるんだが。
publicに静的ページ置こうか考えたけど、viewテンプレートは使いたいから却下。
ちなみにver5.1。
誰か分かる人ご教授ください。
0730nobodyさん垢版2016/10/08(土) 10:50:56.41ID:???
ルートパラメータ使えばいいだろ
それでなんとかならないようなら
そもそもフレームワークを使う意味が不明では
0731nobodyさん垢版2016/10/08(土) 11:59:58.63ID:???
前ページルーティングって恐ろしい思考回路だな
そもそも使うの初めてなら、まずは他の人がどうやって似たシステム組んでるのか調べる方が良いよ
勉強には先人の知恵に習うのが一番
0732nobodyさん垢版2016/10/08(土) 14:14:51.15ID:???
返信ありがとう。
丸2日くらい検索したけど出てこないんだ。最後の砦としてここで聞いてる。

ひとまず、ルートパラメータでやってみたけど、

//通常のルーティングされなかったら以下実行
//static html
Route::get('/{url1?}/{url2?}', function ($url1 = null, $url2 = null) {
//home
if (!$url1 && !$url2) {
return view('welcome');
}
if (!$url2) {
return view($url1 . '.index');
} else {
if (view()->exists($url1 . '.' . $url2)) {
return view($url1 . '.' . $url2);
} else {
return view($url1 . '.' . $url2 .'.index');
}
}
});

こんなでいいのかな?
第二階層までしか対応出来ないのがアレだけど。
もっといい方法あったら教えてください。
0733nobodyさん垢版2016/10/08(土) 14:30:09.56ID:???
あんまりララベリッシュじゃないけど動くだろうからそれでいいんじゃね?
もっといい方法といってもなあって感じ
そもそも大量の静的ページってのが根本的に合わないわけで
bladeテンプレを使いたいっていうからには少なくとも「ある意味」動的ではあるはずだと思うんだけど
動的に変わる内容が何一つ整理できない(全てを個別に扱うしかない)なら
もうそれ以上やりようがないんじゃないかと
0734nobodyさん垢版2016/10/09(日) 04:57:13.56ID:???
>>732
こんなんでどう?最後のスラッシュが$_SERVERからしか取れないのが残念なところだが。

Route::get('/{url?}', function($url=null){
if(is_null($url))
{
return view('welcome');
}else{
$segments = explode('/', $url);
$path = implode('.', $segments);
if(ends_with($_SERVER['REQUEST_URI'], '/'))
{
$path .= '.index';
}
return view($path);
}
})->where('url', '.+');
0735nobodyさん垢版2016/10/09(日) 05:23:17.40ID:???
よー考えたらexplode,implodeじゃなくてreplaceでいいな。どうせ最後にスラッシュつかないんだし
0736nobodyさん垢版2016/10/09(日) 06:30:33.05ID:???
つかそれで$urlにスラッシュ含めた残りのURL入ってくるか?
5.1で試したが2階層以上あるとエラーになるぞ
0737nobodyさん垢版2016/10/09(日) 06:37:26.72ID:???
ついでに言えばREQUEST_URIも俺の環境では最後のスラッシュが削除されるようだ
そういうWebサーバの仕様に依存しそうなコーディングはいかがなものかと
Laravelとは1ミリも関係ない話でもあるが
0738nobodyさん垢版2016/10/09(日) 07:17:04.12ID:???
>>736
5.1だと入らないのか。5.2だと入るからいけるのかと思ったわ
0739nobodyさん垢版2016/10/09(日) 07:35:48.54ID:???
いや5.3でダメだから既存の5.1環境で試してやっぱりダメだったんだが・・・
パラメータ2つ以上だと普通にNotFoundHttpExceptionになる
なおPHP7のXampp
0740nobodyさん垢版2016/10/09(日) 11:02:36.27ID:???
おお、すごい。とても参考になりました。ありがとう。
若干改変(改悪かもしれない)したやつを書いておきます。

Route::get('{url?}', function($url=null){
// '/{url?}'としたとしても、htt://hoge.com/でアクセスした場合、
// 何故か$urlにスラッシュが入るので。いっそのこと{url?}で受け取り
// 普通に比較に変更
if ($url === '/') {
return view('welcome');
}

// replaceで。
$path = str_replace('/', '.', $url);

if(ends_with($_SERVER['REQUEST_URI'], '/')){
$path .= '.index';
}

if (view()->exists($path)) {
return view($path);
}

// 番兵的な。
//through all
abort(404);

// 一応、普通のURLで使うやつだけにしときます。
})->where('url', '[a-z0-9\/\-\_]+');

本当助かりました。ありがとうございます。
キレイにコード書ける人ってかっこいい。
0741nobodyさん垢版2016/10/09(日) 11:19:10.28ID:???
おっと、5時間かけて検証しながらレス書いてる最中に色々レスついてた。
一応、上に書いたやつでおれの環境だと動いてる。
若干スレチ気味で申し訳ないが、サーバーの問題なのかな?
検証はVM環境(homestead)php5.6。
0742nobodyさん垢版2016/10/09(日) 12:09:56.73ID:???
CentOS6にapacheにPHP5.6の環境でもやっぱり
スラッシュ区切りの文字列を単独のルートパラメータとして受け取ることはできないようだ
別ルートと判断されてNot Foundになる
HomesteadはUbuntuにNginxなんだっけ?
ApacheとNginxの挙動の違いくさいな
URI末尾のトレイリングスラッシュについてもApacheとNginxでは当然処理の仕方が違う
Apacheでは.htaccessのリライトルールで末尾スラッシュなしのURIにリダイレクトされるから
REQUEST_URIで末尾スラッシュをチェックしても無意味になる
まあ特定環境で動けばいいわけだろうけどもし実稼働環境が開発環境と違えば
この辺理解しておかないと慌てることになるかもだな
0743nobodyさん垢版2016/10/09(日) 13:53:14.30ID:???
そういうことなのか。
何故おれはNginxでやっていたのか...実稼働はapacheなのに。
ということで、環境をapacheに変更してやってみた。

トレイリングスラッシュについてのリダイレクトは勝手にしてくれなくていいので、
htaccessの該当部分を削除して、
$_SERVER['request_uri']で、url末尾の/はとれるように。

こちらの環境ではスラッシュ区切りの文字列でも一つのルートパラメータとして、
受け取ってくれてるんだけどなー。
何が原因かわからないと、何かモヤモヤするね。
0744nobodyさん垢版2016/10/09(日) 15:18:17.27ID:???
HomesteadのNginxでも試してみたが
やっぱり複数スラッシュを含むURLはそのままエラーになるぞ
他にも/{url1}/{url2?}とかのルートが定義されてて
そっちが動いてるんじゃないだろうね?
こっちがおかしいとしたらどうおかしいのかさっぱりわからん
本当にどうでもいいことなんだが原因がわからんとイラつくわ

ちなみにNginxだからトレイリングスラッシュはちゃんと残るようになった
0745nobodyさん垢版2016/10/09(日) 16:47:00.74ID:???
create-projectで新規に作ったから、他のルート定義はしてない。

やりたいことは実現できてるんだけど、
なんで出来たり出来なかったりするのか気になるから、
そっちの環境でも出来るようにしてみて欲しい。わがままな話だけど。
俺の方がおかしいのかもしれんし、再現性あるかも知りたいし。
環境はlaravelのver5.1.45
英語だけど、一応同じようなことやってるの発見した。
https://laracasts.com/discuss/channels/code-review/dynamic-uri-segments-in-laravel-5
0746nobodyさん垢版2016/10/09(日) 16:48:41.61ID:???
REQUEST_URIはサーバによって違うよ
デフォルトで定義されているものを変更することもある
使わなくて済むなら、使わないほうがいい
0747nobodyさん垢版2016/10/09(日) 19:32:05.26ID:???
>>746
いやそこはいいんだよ
/param1/param2
のようなURLを
Route::get('/{url?}', function($url = null) { return $url; });
のような形で受けられるかということ
俺がやるとどの環境でもNotFoundHttpExceptionになる
>>745がやるとparam1/param2が返るらしい

>>745
んなこと言われてもなw
そもそもルーティングされてくれないんだからどうしようもないわけだが
0748nobodyさん垢版2016/10/10(月) 00:34:49.96ID:???
>>747
homesteadでも試したけど取れたわ。
> Route::get('/{url?}', function($url = null) { return $url; });
> のような形で受けられるかということ
->where('url','.+')が足りないとかそういう問題ではないよね?
0749nobodyさん垢版2016/10/10(月) 00:48:28.70ID:???
>>748
いやそれですわorz
whereで条件を「緩める」という発想が一切なかったようでそこ目に入ってなかった
そういう仕掛けだったのね・・・お騒がせしますた
0750nobodyさん垢版2016/10/12(水) 00:29:06.63ID:???
laravelで作ったアプリを複数のapサーバでバランシングする予定なんだけど、apサーバ自体にはcomposerとか必要ないよな? なんか入れないでもファイルコピーだけで動くっぽいんだけど。
0751nobodyさん垢版2016/10/12(水) 08:04:51.42ID:???
物を壊したら弁償するのは理解できても風評被害を食らわせてもやった側に何の罪もない された側が悪いという考え方のカスはおかしい。
0752nobodyさん垢版2016/10/12(水) 08:32:49.98ID:???
物を壊してもそこまで怒らせるような行動を普段からしてるほうが悪い
という考え方の人もいますよ
うちの嫁ですけどね
0754nobodyさん垢版2016/10/12(水) 09:03:44.95ID:???
まあしかしデプロイ先でもアップデートとかできるようになってるほうがいいわな
転送もgitでやるほうが何かと都合がいいし
そう考えると鯖それぞれに一通り環境は作っておいたほうが良さそう
0755nobodyさん垢版2016/10/15(土) 10:19:07.64ID:???
デプロイ先でアップデートとか愚の骨頂か
0756nobodyさん垢版2016/10/17(月) 13:09:19.93ID:???
>>755
ポリシーの違いだよ
君のやり方以外も許容しなよ
0757nobodyさん垢版2016/10/17(月) 18:29:10.68ID:???
https://github.com/andersao/l5-repository

Laravelにリポジトリパターン導入しようと思ってるんだけど
PresenterとかCriteriaの概念がイマイチ分からない

ggってもここらへん詳しく解説してるサイトとかないし、ベストプラクティスが全く分からない
誰か教えてください
0760nobodyさん垢版2016/10/18(火) 23:51:29.59ID:???
eloquentなんか使わんでもクエリービルダーだけで何とかなるで。
0761nobodyさん垢版2016/10/18(火) 23:55:27.91ID:???
アーティ=サンからmigration作った時にmigrationファイルが自動的に日付+テーブル名になるのマジやめて欲しいんだけど何とかならんの?
テーブル定義したいのにクソファイル名のせいでファイル探すっていう無駄な工程が発生しよるんだが。
ターミナルからだと一発補完も出来ねえし。
0762nobodyさん垢版2016/10/19(水) 01:12:44.30ID:???
アーティさんって誰だと思ったらArtisanのことかw
マイグレーションファイルを探すのに手間取った経験は全くないんだが
どうやったらそんなに苦労できるんだ?
0763nobodyさん垢版2016/10/19(水) 03:39:37.96ID:???
>>762
作ったファイル開くまでに何回キー叩かせるんだよ。
ディレクトリのシンボリックリンク貼ってても10回近くキー叩くぞ。むしろアーティ=サンからファイル作ったら即vimで開いてほしいわ。
0764nobodyさん垢版2016/10/19(水) 04:13:21.70ID:???
どうでもいいがArtisan=職人な
普通カタカナではアーティザンと書くと思う

で、ファイル選択はGUIでエディタ使えば済む話なんだよなあ
みんながSublime使ってるわけじゃないのはわかるけど
今どきvimやemacsでもないだろと
0765nobodyさん垢版2016/10/19(水) 08:09:04.83ID:???
職人なんだからニンジャっぽくアーティ=サンって呼ぶのは実際礼儀正しいだろ。
ワイはlaravel始めてから間もないからよく分からんのやけど、composerって環境にあんまり依存しないんか?
現在のlaravelアプリの開発環境はほぼデプロイ用のAPサーバと同じにしてて、それってなんでかっていうとlaravelで編集したファイルをrsyncでそのまま転送してるからなんだ。
これが動作環境違うとコケる可能性があるってんならアーティ=サンはローカルじゃ叩けない。
0766nobodyさん垢版2016/10/19(水) 08:13:52.62ID:???
× 叩く
○ オジギ

よく考えたらアーティ=サン自体はcomposerとは関係ないな。試しにローカルでphpバージョンとか合わせずにやってみるわ。
0767nobodyさん垢版2016/10/19(水) 08:36:09.83ID:???
そりゃスゴイフルイ・シンキングってもんだ
むしろjsonさえあればどこでもサクッと環境を揃えられるのが
composerなりnpmなりbowerの強み(の一つ)でしょうに
マイグレーションも同じ目的
だからこそ実行順を保証するための日時が
ファイル名末尾ではなく先頭に必要なわけで

あとrsyncじゃなくgit使ったほうがいいぞ
同時に複数箇所を並行して修正とか「ここ一旦変えたものを見たい」とか絶対言われることのない仕事なら別だが
少なくとも.envが上書きされないように変な工夫とかしなくて済むし
gitプラグイン入れればSublimeの中からコミット&プッシュできるし
何かと捗るぞ
0768nobodyさん垢版2016/10/19(水) 08:40:23.98ID:???
>>766
動作要求さえ満たしていればphpのバージョンによる問題は経験したことがないな
とはいえ確か5.6以上とかだからほぼ最新に限るという意味だが
0769nobodyさん垢版2016/10/19(水) 09:58:02.78ID:???
>>767
そりゃgitは使っておるが。pushした時にpost-updateでrsyncで配布するで。
流石にAPサーバ沢山あるのに全部のAPサーバのディレクトリにgitレポジトリは使わんやろ。ステージ環境までやな、gitは。
そこからpushして撒く感じや。
0770nobodyさん垢版2016/10/19(水) 10:16:51.12ID:???
なるほど
ローカルに環境は作ってないの?
Appファイルは開発サーバ上で直接変更し
デバッグもリモートでやってるわけ?
あとこれは純粋な興味からだけど
DBも各サーバに持ってレプリケーションしてるの?
0771nobodyさん垢版2016/10/19(水) 11:06:52.79ID:???
protected $repository;

/**
* @return void
*/
public function __construct(TeamRepository $repository)
{
$this->repository = $repository;
}

コントローラーだとこんな感じに使えるけど、
これをTestクラスでも使う場合はどうすればいんだ

constructで依存注入してもダメだし、ただインスタンス化してもcontainerがどうとかでダメだった
0772nobodyさん垢版2016/10/19(水) 11:16:30.88ID:???
andersao/l5-repositoryってのがあるけど
それ入れりゃ済むって話でもない?
0773nobodyさん垢版2016/10/19(水) 11:24:05.69ID:???
$this->repository = $this->app->make(TeamRepository::class);

思いっきりマニュアルに書いてました
0774nobodyさん垢版2016/10/22(土) 19:27:23.05ID:???
GitHubで色々Laravelのサンプルアプリ漁ってみたんだけど
どれも1つのModelに対して1つのリポジトリーなんだよね

やっぱりそういう原則が在って、何か理由でもあるのかな?

1つのModelに複数リポジトリー作らないと、
Classが肥大化するし単一責務じゃないんと思うんだけど
0775nobodyさん垢版2016/10/23(日) 01:08:34.59ID:???
多分サンプルだとCRUDのRが2,3で事足りるのしかないんじゃないかね。それこそEloquentそのまま使えばいいじゃんレベルの

よく使うメソッドだけリポジトリにして、
複雑なクエリは1クエリ1クラスにするってのはたまにやる

Eloquent ORMでリポジトリパターンってなんかもやもやするんだよなあ
0776nobodyさん垢版2016/10/23(日) 07:42:30.21ID:???
どこ読んでもDBに書き込んだりするのコントローラーの中でやってるけどモデルの中にメソッド作ってコントローラーから呼び出しすのって駄目?
0778nobodyさん垢版2016/10/23(日) 18:13:03.50ID:???
>>777
普通にいいのか
ありがとう

ブログとかの解説読んだだけでサイト作ってたらコントローラー肥大化して困ってたから今度からそう書きます
0779nobodyさん垢版2016/10/24(月) 00:48:37.30ID:???
laravelのautuミドルウェアでログインしてたらjsonで「ログインしてる」って情報返してログインしてなかったら同じくjsonで情報返すようにしたいんですが、どこをいじればいいのでしょうか。
なんか実体はillminateだかのディレクトリの中にいるみたいですけどそこを弄るのは違うし……
0781nobodyさん垢版2016/10/24(月) 08:04:03.58ID:???
>>780
何てことはない、Auth::check()を使えば良かっただけでした。
0782nobodyさん垢版2016/10/27(木) 22:47:02.69ID:???
laravelで作ったWEBサービスのandroidアプリを作成する場合、
アプリはあくまでViewの役割で、laravelのapiを作成+利用という感じがベストプラクティスですか?
0783nobodyさん垢版2016/10/28(金) 04:55:45.08ID:x7Q+ndGR
>>782
ベストかどうか分からないけどそんな感じのを作ったことはある
アプリ側からデータ取るのに必要な情報をpostで受けとり、結果はjson形式で返す
0784nobodyさん垢版2016/10/28(金) 21:04:00.38ID:???
皆はバリデーションの共有はどうやってますか?

自分はrequest側でもview側でも共有化するために
config('validations.maxlength.user.name')みたいにやっています
0785nobodyさん垢版2016/11/03(木) 12:15:46.19ID:???
laravelのhelperで一つ一つfunction_existsでチェックしてるけど
何の意味があるんだこれ
0786nobodyさん垢版2016/11/03(木) 17:23:25.16ID:???
>>785
同名関数を定義しておくと差し替え可能なので拡張出来る
0787nobodyさん垢版2016/11/03(木) 20:08:13.21ID:???
namespaceに置かないんだから当たり前のこと
0788nobodyさん垢版2016/11/19(土) 16:41:48.71ID:???
laradockにsupervisor導入したいんだけど
どこのコンテナにインストールすればいいの
0789nobodyさん垢版2016/11/20(日) 03:37:52.96ID:???
supervisorに何させたいのかによるのでは
0790nobodyさん垢版2016/11/20(日) 08:38:12.32ID:???
workspaceのdockerfileにsupervisorを自分で記述するだけで大丈夫でした
0791nobodyさん垢版2016/11/20(日) 19:41:52.68ID:???
laravel5.3でnpm install実行しようとしたらこんなエラー出て進めない

Unsupported platform for fsevents@1.0.15: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npmは3.10.9、nodeは7.1.0
0792nobodyさん垢版2016/11/20(日) 21:46:32.46ID:???
適当にぐぐったらnpm3.10.8以降がダメらしく3.10.7にダウングレードしろって書かれてるな
0793nobodyさん垢版2016/11/25(金) 02:37:29.10ID:???
ajaxの処理中にセッションの中身使いたい時どうすればいいんだ・・・
0794nobodyさん垢版2016/11/25(金) 14:46:52.67ID:???
別ドメインの場合の話かの?
そんならLaravel無関係じゃぞい
同一ドメインなら普通にセッション取れるはず
0796nobodyさん垢版2016/11/25(金) 19:04:26.93ID:???
>>794
$request->session()->all()
Session::all()
のどちらを行っても何も入ってないからてっきり特殊なことしないといけないのかと
0797793垢版2016/11/25(金) 19:37:06.26ID:???
自己解決しました。
post先のURLをapi.phpに登録してたのが原因でした。
0798nobodyさん垢版2016/11/25(金) 20:44:37.74ID:???
なるほど
5.3でAPI用のルート定義が分かれたんだったか
そしてAPI側とはセッションが繋がらんと
理に適ってるようでもあり不便でもあり
0799nobodyさん垢版2016/11/26(土) 11:38:11.88ID:UHgOhZNm
>>798
不便だす
0800nobodyさん垢版2016/11/26(土) 12:03:32.63ID:???
api.phpのルートはstatelessってドキュメントに明記してあるな
まあ本来いろんなところからサービスを請け負うためのもんだから
自分とこ専用のサービスなら自分のルートでやれってことなんだろう・・・か
0801nobodyさん垢版2016/11/26(土) 20:49:00.44ID:ziF/LSyi
>>791
なんかひでえな。
ポンコツmac以外お呼びでないと。
0802nobodyさん垢版2016/11/28(月) 22:00:02.43ID:???
ユーザーアイコンのアップロードで一時的にstorageディレクトリに保存→キューでリサイズ
このパターンで行こうかなと思ってるんだけど

storageに一時的に保存するのってバッドプラクティスにならない?
0803nobodyさん垢版2016/11/28(月) 22:18:25.68ID:???
そこに置くのが一番バッドじゃない気がするがのう
そこがバッドならどこに置けばグッドだと?
0805nobodyさん垢版2016/11/29(火) 11:25:42.66ID:???
storage以外ならtempだろねぇ
0806nobodyさん垢版2016/11/29(火) 21:35:38.31ID:???
キューで必要ならstorageだろう
0807nobodyさん垢版2016/11/29(火) 22:40:33.25ID:???
storage保存で無事キューイングも動作しました。
ありがとうございます!
0808nobodyさん垢版2016/11/29(火) 22:52:44.91ID:???
複数ユーザーが使うならファイル名のバッティングには注意な
どこに置こうと共通する常識の類だが念のため
0809nobodyさん垢版2016/12/08(木) 11:45:26.84ID:???
しっかしまあ、ルーティングからデザインまで全部やると大変ね
楽になったとは言えフレームワークの学習コストもあるし
結局は、なんだかんだ既存のCMSに無いこと実装するわけだし
0810nobodyさん垢版2016/12/14(水) 00:26:23.12ID:???
チラ裏容赦
collectionを継承すると色々使えてメソッドチェーンでサラサラ書けてステキ
とか思って多用してたんだけど
except()なんかが返すのは「新規インスタンス」なんだよね
生のcollectionを直接使うならそれでなんの問題もないけど
継承した子クラスが追加のプロパティを持ってて値が入ってる場合
それらはみんな消えてしまうわけだ
新規インスタンスだから当然なんだけど
結構そのことを忘れてバグを作り込んでしまうんだよな
いや俺がヘボいだけなんですけどね
新規インスタンスじゃなくクローンを返してくれてもいいのにと思った次第
パフォーマンスを考慮しての仕様なのかね
0811nobodyさん垢版2016/12/14(水) 10:57:44.98ID:???
collectionは抽象化されてないのか
0812nobodyさん垢版2016/12/14(水) 11:37:39.00ID:???
>>810
状態を持っていないものに無理やり状態を持たせる設計を見直すか、
破壊的なメソッドを自分で追加するかどっちかだな
0813810垢版2016/12/14(水) 11:51:25.45ID:???
>>811
とりあえずレス感謝れす
趣旨がよくわからんけどCollectionは抽象クラスではないね

except()等のチェイナブルメソッドは具体的にはreturn new static($items);みたくなっているから
たとえばCollectionを継承してFiltersというクラスを作ったとして
$filters->except('filter1')はもちろんFiltersクラスのインスタンスを返す
Collectionではなくてね
しかしFiltersに例えばurlKeyというプロパティを持たせ、初期値以外の値を入れておいて
echo $filters->except('filter1')->url();
なんてやったとしましょう
url()の中で自分のurlKeyを見るとそれはもう空っぽなわけ
伝わるかなこの残念な感じ

>>812
まあそうなんだけどね
継承して拡張することで状態を持たせたいという発想は許されないのかなと
0814810垢版2016/12/14(水) 12:02:55.71ID:???
あと必ずしも破壊的である必要はなくて
return new staticの代わりに

$new_instance = clone $this;
$new_instance->items = $new_items;
return $new_instance;

みたいになってりゃいいんじゃねと思うけど
itemsがprotectedだからセッターを作る必要があって
そうなると隠蔽性が壊れるっていう話なのかなと思ったりしないでもないでもない
0815nobodyさん垢版2016/12/14(水) 13:04:11.33ID:???
継承じゃなく委譲すればいい話では
0816nobodyさん垢版2016/12/14(水) 13:12:49.57ID:???
>>813
責務を増やす事は簡単
その分テストは複雑になる
これは宜しくない
だから専門を新しく作ればいい

$urls = new URLのリスト作る奴($filters, 'urlKey');
assert($urls->url() == $url);
0817810垢版2016/12/14(水) 14:58:11.95ID:???
>>815
プロパティとしてCollectionを持って未実装メソッドはそいつに受け渡す形ってことね
マジックメソッドとか気分的にあんまり使いたくないけどありだよね

>>816
それがベストプラクティスって奴なのかな
今回のケースに限るとフィルタ(要するに絞り込み)の種類がやたら多い上に
クエリパラメータの書き方が統一されておらず(既存サイトの書き換えです)
複数フィルタをまとめて扱うもの(いわゆる詳細検索)もあったりして
やはり各フィルタのクラスがクエリパラメータ生成を受け持つべきと判断した次第なんだけど
失敗だったかもしれないなあ

とりあえずCollectionにラッパーかぶせてチェイナブルメソッドがクローンを返すようにしてみたよ
30個ものメソッドをオーバーライドするんじゃ譲渡のほうがマシじゃんという話もあるがw
まあ一回作っときゃ今後のストレスが減るかなと
パフォーマンスや動作には今のところ問題なさそうですわ
ほんとチラ裏な話が続いて申し訳ないw
0818nobodyさん垢版2016/12/22(木) 15:16:25.99ID:???
HasManyのEagerLoadingでlimit設定設定したいのですが

Post::with(['comments'=>function($query) {
return $query->limit(5);
}])
->get();

これだと1つのポストあたり5件じゃなく、全てのポストから5件を取得してしまいます。

解決策はないですかね?
0821nobodyさん垢版2016/12/22(木) 18:19:17.34ID:???
eager loadingがどういうSQLに展開されるか調べてみそ
無理だとわかるから
0822nobodyさん垢版2016/12/24(土) 22:34:54.53ID:???
ドキュメント読んでもイマイチ分からないんですけど
laravel passportの主な実用例というのはどういったものでなんでしょう
0823nobodyさん垢版2016/12/25(日) 10:04:32.03ID:???
質問の意図がよくわからんが
とりあえずoAuthがどういうものかはわかってるのかな
それがわかれば実用例も自ずとわかりそうなものだが
0825nobodyさん垢版2017/01/25(水) 16:28:42.76ID:???
ドキュメント見づらい
サイドバー隠れなくていいよ
0827nobodyさん垢版2017/01/26(木) 13:07:00.28ID:???
項目も細かくわけないでいいよね。
ドキュメントなんだから、いちいちページ変えるのも面倒だし、一覧性も高い方がいい。
0828nobodyさん垢版2017/01/27(金) 00:41:39.06ID:???
日本語版はなんで本家のレイアウト変えてるんだろう
メニュー無いのが不便で仕方ないから本家見てる
0829nobodyさん垢版2017/01/27(金) 16:05:21.63ID:???
laravelのIDEはphpstormじゃないときつい感じか?
netbeansはbladeの記述にのに対応してなくてダルいんだが…
0832nobodyさん垢版2017/01/28(土) 05:22:38.83ID:???
さくらエディ いやなんでもない・・・
0834nobodyさん垢版2017/01/29(日) 11:32:57.73ID:???
なんで秀丸派おらんの?
おれは全然不便してないけど。作業効率そんなに変わるもの?
0835nobodyさん垢版2017/01/29(日) 11:40:22.58ID:???
秀丸ってWindows専用じゃん
しかも4000円もするし
0836nobodyさん垢版2017/01/29(日) 12:01:17.48ID:???
書くのはSublimeでデバッグはNetBeansだな
Sublimeから直接XDebugが使えるみたいだけどまだ試したことはない
0837nobodyさん垢版2017/01/29(日) 14:21:14.60ID:???
おれもSublimeTextだわ
秀丸を長年カスタマイズしてきた猛者ならわからんが、おれは気持ちよさが全然違う
実作業時間の話ではない
0838nobodyさん垢版2017/01/29(日) 22:22:46.52ID:???
Sublimeは入れただけでよくわからなくてあんまり試してないけど、Atom使ってるけど適当に補完が効きまくるしキャメルケース?でも補完してくれるからかなり気持ちいいね
user_first_name_kanaみたいなやつがufnkaとかで補完できる
0839nobodyさん垢版2017/01/29(日) 22:27:42.33ID:???
どうでもいいがそれはスネークケースだな
キャメルケースならuserFirstNameKana
先頭も大文字のはなんていうんだっけか
0840nobodyさん垢版2017/01/29(日) 23:13:52.39ID:???
アッパーキャメルケースとかだった気がする。
まあその辺、いい加減全ての言語で統一してほしいよな
0841nobodyさん垢版2017/01/30(月) 00:17:33.27ID:Gsq6F7gO
visual studio codeはどう?
0842nobodyさん垢版2017/01/30(月) 00:40:33.27ID:???
起動が遅すぎて俺はボツ
環境によりそうだけど
0844nobodyさん垢版2017/01/30(月) 09:23:10.78ID:???
プログラム用途ならエディタなんて多くて一日一回、へたすりゃ週に一度しか起動しないぞ

Sublime開きっぱなしだ
0845nobodyさん垢版2017/01/30(月) 09:31:45.52ID:???
ずっと仕事してるわけでもないからな
家でエロい動画見てるとき職場から電話があって・・・
みたいなときすぐ立ち上がるほうが
ストレスがなくていいわ
0846nobodyさん垢版2017/01/30(月) 15:46:30.12ID:???
エロ動画みるのにエディタを閉じる必要あるのか?

仮想画面で切り替えた方がいざというときよくない?
0847nobodyさん垢版2017/01/30(月) 21:47:04.16ID:???
>>846
そもそも会社以外じゃエディタなんぞ開かんっつってんの
よっぽどの緊急事態に対処するとき以外はね
0848nobodyさん垢版2017/01/30(月) 21:51:31.57ID:???
エロ動画も会社以外じゃ観ないけどな
0849nobodyさん垢版2017/01/30(月) 22:46:45.85ID:???
っていうか、なんで自宅限定になってんだ?w
Laravelをどんなエディタで編集してるかってことだろ
0850nobodyさん垢版2017/01/30(月) 22:58:39.79ID:???
いろんなエディタを使い分けるのってそれ自体ストレスなんだから
利用ケースを制限するファクターは全てマイナス要因に決まってるだろ
特定プラットフォームでしか動かないなんてのと同じだ
0851nobodyさん垢版2017/01/31(火) 02:56:42.75ID:???
>>850
ほんとこれ
Xcode、Eclipse、Visual Studio、Atom、Xamarin Studio
泣きそう
0852nobodyさん垢版2017/02/01(水) 01:13:11.19ID:???
vimだけ使っとけばええねん
0853nobodyさん垢版2017/02/01(水) 01:26:11.89ID:???
vimでスマホアプリ作れんのけ?
0854nobodyさん垢版2017/02/01(水) 05:01:23.77ID:???
配列のバリデーションで、 'item.*.price' => 'numeric'


エラーメッセージに、配列の何番目がエラーを起こしたか表示したいんですが、
どのようにすれば出来ますか?


下記のように書くと 価格とは分かるんですが、何番目の価格なのかが表示されず
困っております。

resources\lang\ja\validation.php
'attributes' => [
'item.*.price' => '価格',
],
0856nobodyさん垢版2017/02/01(水) 19:28:38.12ID:???
俺も2秒位で思いついたけど、
ひょっとしたらウルトラテクニックがあるのかと思って黙ってた
0857854垢版2017/02/01(水) 20:23:28.75ID:???
配列のバリデーションしたら、何番目か知りたいと思うんですが
ウルトラテクニック扱いなんですかねぇ・・・

:Index

:Key

とかで何番目か取れても良さそうなもんだと思ったんですが。
0858nobodyさん垢版2017/02/02(木) 01:36:29.31ID:???
そもそも、配列でのバリデーションにこだわるってことは
要素の数が変わるフォームなんでしょ?

だったら番号出ても意味なくない?

無駄に入ってない項目とか、間違った項目とか調べるくらいなら、
素直に一つ一つ項目ごとに変数に入れて検査すりゃいいんじゃね?
0860nobodyさん垢版2017/02/04(土) 13:55:59.29ID:???
エラーのでたマスに色付けるとか、してないの?
0861nobodyさん垢版2017/02/05(日) 16:25:08.87ID:???
5.3→5.4にしたらバリデーションのnumericの動きが変わった。

5.3は未入力だnumericチェックされてなかったのに、
5.4は未入力でも数値入力しろって言われるようになった。
0862861垢版2017/02/05(日) 18:59:13.50ID:???
nullable付けたら、5.3と同じになった。
0863nobodyさん垢版2017/02/06(月) 00:05:39.97ID:???
まあ本来のバリデーションの用途考えれば未入力もエラーになるべきだよね
0864nobodyさん垢版2017/02/08(水) 22:57:16.81ID:FzukQccy
>>850
まあねぇ。

Android: AndroidStudio
Java: NetBeans
PHP/Python: VSCode
0866nobodyさん垢版2017/02/10(金) 10:14:27.97ID:Z7sQhP2t
PHPStormでも、補完できない・警告でまくりでストレスあるわな。
Laravelだと特に。
AtomやVSCodeでもcomposerの参照くらいできるpluginはあるし。
どっちがいいとか一概に言えないな。
0867nobodyさん垢版2017/02/10(金) 20:40:48.10ID:???
PHPStorm に laravelのプラグイン入れてもダメ?
0869nobodyさん垢版2017/02/11(土) 00:17:56.87ID:R7QtoNQ0
Cakephpじゃだめ?
0870nobodyさん垢版2017/02/11(土) 00:20:50.87ID:???
CakeはDIコンテナがないのがストレスすぎる
0871nobodyさん垢版2017/02/11(土) 13:42:23.81ID:???
pimple入れたらいいじゃん
0872nobodyさん垢版2017/02/11(土) 14:38:22.49ID:???
Laravelイマイチはやってないから、人に説明すんのがめんどくせぇ
0873nobodyさん垢版2017/02/11(土) 15:02:18.02ID:???
PHPフレームワークの中では流行ってる方だと思うけど...
ttps://mayonez.jp/1374
0874nobodyさん垢版2017/02/12(日) 08:13:29.04ID:???
自作フレームワーク+Smartyでシステムを作り稼働中です。

このシステムのフレームワークをLaravelに変更し、HTMLテンプレートは
現状のまま(BladeではなくSmartyテンプレート)にしたいと思っています。

Laravel + Smarty だと、開発効率・可読性・メンテし易さなど、デメリット大きい
でしょうか?

とくに画面遷移の部分(バリデーションエラー時にPOSTデータを再表示するなど)
が気になっています。

教えてください。
お願いします。
0875nobodyさん垢版2017/02/12(日) 12:53:16.61ID:???
素直にbladeにすべき

ちな、smarty→bladeの置換プロジェクトを進行中
開発中もデザイナーの更新がすすむので、直接書き直すのではなく、面倒でも置換スクリプトを書いてるよ

もちろん汎用性はない
0876nobodyさん垢版2017/02/12(日) 14:47:06.92ID:???
> 素直にbladeにすべき

何故でしょうか?
理由を具体的に教えてもらえませんか?
0878nobodyさん垢版2017/02/12(日) 16:29:12.36ID:???
>>876
フレームワーク使って楽しようってのに
わざわざややこしいことするなら
そもそもフレームワークいらないじゃん
0879nobodyさん垢版2017/02/12(日) 16:49:22.12ID:???
LaravelはあんまりBladeに依存してないと思うけどな
テンプレートエンジンの入れ替えは効くんじゃね?
Smarty側の事情を知らんから迂闊なことは言えんけど
0880nobodyさん垢版2017/02/13(月) 01:10:50.94ID:???
再表示なんかは当たり前だけど、普通に実装してるよ。
そのためのフレームワークなんだから。

ログインも、ユーザー管理も、データベースへの書き込みも全部用意されてる。
独自の実装にしたい場合を除いてLaravel使ったほうが楽
0881nobodyさん垢版2017/02/13(月) 01:13:37.73ID:???
あ、Smarty使ってか…。
ごめん、やった事ないからそれは知らんw
Bladeならできるよ。置き換えるのも大した手間じゃないでしょ
0882nobodyさん垢版2017/02/13(月) 09:56:32.26ID:???
bladeの場合、value="{{ old('name', '初期値') }}" と書いて、コントローラーでの値設定をすべてすっとばすの

ので、postメソッドでのエラーは、元のgetメソッドに return back()->withInput()->withError($this->errors); で返すだけの構造となる

だから、blade使わないならコントローラーの構造がまったく別物になるよ

もちろん、フォーム部品を全部コントローラーで用意するなら、smartyでもlaravel的構造を維持できるけどね

そこまでやる価値はないと、俺らは判断した
0883nobodyさん垢版2017/02/13(月) 10:04:39.13ID:???
それはむしろoldヘルパー(とRequestファサード)のおかげではないの?
テンプレート内でグローバルなfunctionさえ呼べればいいような
0884nobodyさん垢版2017/02/13(月) 10:31:18.12ID:???
ああそうか
既存のテンプレートは一切変更しないという前提だと無理だね
デザイナーさんが絶賛書き換え中のプロジェクトならなおさら
でも一気に切り替える前提なら
フォームのinputのvalueだけ書き換えちゃえば済む話かなと
0885nobodyさん垢版2017/02/14(火) 22:04:21.18ID:???
フォーム部品を全部コントローラーで用意するのは大した手間ではない気がします。
というか、その方が考え方がスッキリしていて良い気がします。

テンプレート内でグローバルなfunctionを呼んで表示する値を取得するのは、
ビューからロジックを呼ぶことになり、あまり綺麗ではないような・・・

Bladeを使う人はold()を使いまくっているだろうから反対されそうですが。
0886nobodyさん垢版2017/02/14(火) 23:27:56.87ID:???
自分の好きに使ったらええんやで
0887nobodyさん垢版2017/02/15(水) 01:03:35.73ID:???
ビューからロジックを呼ぶってのは
<?= Request::has('name') ? Request::input('name') : '' ?>
みたいに書くことを言うんじゃねーの?
HTMLしか知らないデザイナーのオネーサンが書いたページにも
最小限の手間で入れられる、さらには
「こう書けばええんやで」と教えれば
オネーサン自身でも何とかなるレベルのシンプルさになることが重要なのであって
そういう意味ではコントローラでコンポーネントを組み立てるなんて考え方のほうが
よっぽどビューとロジックの混合でありバッドプラクティスなんじゃないかと
0888nobodyさん垢版2017/02/15(水) 01:09:13.46ID:???
でもキッチュでポップなコンテンツだと、
センセーショナルなグローバリズムの観点から言うとロジックがカジュアルだから
コンパイルのためのリソースがオーバードーズするよな
0889nobodyさん垢版2017/02/15(水) 02:25:28.46ID:???
Laravelを書いてるとビュー=HTMLテンプレート脳になるので忘れがちだけど、ビューにもビューロジックがあるわけで。少し複雑になったときにどこに置くかはたしかに迷うことあるな

ヘルパ関数か、横着してモデルにくっつけるか、プレゼンター使うか、フォームだったらフォーム専用のオブジェクト作るかなど
0890nobodyさん垢版2017/02/15(水) 02:32:53.20ID:???
(ビジネス)ロジックとビュー(ロジック)の混合

言いたいことはわかるけど言葉は正しく使ってくれよな
0891nobodyさん垢版2017/02/15(水) 06:11:47.11ID:???
ドメインロジックとか言うんだよな
普通はコントローラに置くな、モデルに持たせろっていう話になる
ビューに書くなんてもってのほか
0892nobodyさん垢版2017/02/15(水) 06:27:35.72ID:???
いずれにせよvalue="{{ old('name') }}"をロジックと呼ぶのがそもそも間違いだな
もし問題にするとしたらグローバルな関数名を使いすぎというところだろうが
そこはLaravel(特にv5以降)の思想のうちってことになるんじゃないかな
「タイピング量を減らす」っていう明確な思想
名前空間の導入でクラス名全般のタイプ量が増えたことに対する対策
グローバルとは言っても関数は変数と違ってユーザーによる汚染は不可能だし
定義時に存在チェックもしてるんだから
関数名がかぶってもそのヘルパーが使えなくなるだけなので
自己責任の範囲と言えるだろうよ
使いたくなけりゃ無視できるという意味でね
0893nobodyさん垢版2017/02/15(水) 18:40:54.36ID:???
oldはただのヘルパーでしょ
0894nobodyさん垢版2017/02/15(水) 19:50:48.78ID:???
ただのヘルパーさんでしたか
それは失礼いたしました。
0895nobodyさん垢版2017/02/16(木) 09:13:35.61ID:???
>>887
バットプラクティスだと思う

デザインをbootstrapに変えるとか、何かしらプラグインで拡張するとか

デザイナーからの要望でチェックボックスとかの出力要素をいちいち変える?
0896nobodyさん垢版2017/02/17(金) 17:40:20.67ID:s05ISus8
バット。。。
0897nobodyさん垢版2017/02/18(土) 00:21:16.69ID:???
名前空間付き関数のオートロード欲しくない?
0898nobodyさん垢版2017/02/18(土) 00:33:58.38ID:???
関数名とその関数が書かれているファイル名とを何らかの形で関連付けるルールが必要になるだろうな
それをやるなら現状のままその名前空間に一個ダミークラス(Fnとか)を置いて
そのメソッドとしてぶら下げることにすれば
ほとんど同じ感覚で使えそうだが
0899nobodyさん垢版2017/02/28(火) 15:16:23.72ID:???
bladeのタイポエラーのとき、strage/framework/viewsのキャッシュファイルで位置を調べるけど、
デザイナーさんは(権限あっても)サーバー覗く技量ないよね

laravel.logとキャッシュファイルからエラー箇所を教えてくれるツールとか、
ないのかしらん?
0900nobodyさん垢版2017/03/01(水) 21:25:46.01ID:???
>>899
そういうの欲しいと切実に思ってたけど
デバッグが必要なほどのロジックをビューに置くな
という戒めと思うことにした
0901nobodyさん垢版2017/03/03(金) 18:45:39.04ID:???
EloquentにDBに存在してる変数以外を持たせるのって間違った設計?
save時に全部insertしようとしてエラーになるけど、対処方法がわからないよ・・。
0902nobodyさん垢版2017/03/03(金) 19:12:27.26ID:???
意味がよくわからんが普通にプロパティを追加して使ってるぞ
もしかして$attributesに直接キーを追加してるのかな?
0903nobodyさん垢版2017/03/03(金) 21:50:16.57ID:???
>>902
そういうことか!
変数定義しないで直接ぶっこんでたのがいけなかった
ありがとう。
0904nobodyさん垢版2017/03/04(土) 09:29:36.74ID:???
guarded指定したら好きに追加できる
0905nobodyさん垢版2017/03/04(土) 12:08:30.04ID:???
どちらかと言えばfillableを推奨してるしfillableの方が
0906nobodyさん垢版2017/03/04(土) 12:09:34.20ID:???
つかそれやる意味ある?
普通にクラスプロパティでええやん
0907nobodyさん垢版2017/03/06(月) 19:19:53.68ID:mGf49+Wm
デザイナー様には、ThymeleafのようなHTMLフレンドリーなのがいいだろうね。
0908nobodyさん垢版2017/03/07(火) 00:29:33.81ID:???
今日jsonを吐き出させようとしてわかった
toJson()を使うならアトリビュート追加する意味があるんだな
0909nobodyさん垢版2017/03/19(日) 07:26:43.06ID:???
>>887
今時デザイナーにhtmlいじらすなよ
cssだけでいいだろ
逆に効率悪くなるぞ
0910nobodyさん垢版2017/03/19(日) 08:08:23.46ID:???
そうだな
俺もそういう環境で仕事したいわ
0911nobodyさん垢版2017/04/23(日) 18:39:55.32ID:???
laravel.jp
って更新止まってる?
リンク切れだらけだけど
0913nobodyさん垢版2017/04/24(月) 21:41:06.34ID:???
唐突だがEloquentのCollectionのmergeメソッドには超要注意ですよおまいら
加える対象の配列に入ってるモデルはidを持ってることが前提になってて
もしidのないモデルの配列を加えてしまうと元のCollectionまで要素が一個になっちゃう
もちろん普通のEloquentモデルはidを持ってるわけだが
DBから取得せずnewで作ったモデルを
mergeで追加しようなんてことは絶対考えちゃダメ
いいか、絶対だぞ
俺みたいになりたくたかったらな!

orz
0914nobodyさん垢版2017/04/24(月) 22:04:57.07ID:???
>>913
要素が全部消えるの?説明がよくわからん。
0916nobodyさん垢版2017/04/24(月) 22:18:18.04ID:???
なお加えるのが空の配列でもだめ
こっちの方が怖いかもしれないな
0917nobodyさん垢版2017/04/24(月) 22:24:35.39ID:???
あー、なるほど。引数に渡したCollectionに複数要素が入ってても、IDがなければ一番最後の要素しか残らないってことか。
0918nobodyさん垢版2017/04/24(月) 22:28:45.91ID:???
いやちょっと待って整理する
mergeの引数はコレクションじゃなくて配列なんだよね
元のコレクションに入ってるモデルにidがないことが前提だな、多分
それだと元のコレクションも要素一個になる
引数の配列に入ってるモデルにだけidがない場合は
元のコレクションは無事で済みそうだ
試してないけど
0919nobodyさん垢版2017/04/24(月) 22:35:12.98ID:???
ソースを読めばモデルのgetKey()メソッド(id取得)でキーイングしていて
まあ当然といえば当たり前の挙動なんだな
でも$query->get()したコレクションをmapメソッドで中身を別の新規モデルにして・・・なんてやって
元がEloquentのCollectionであることを意識せずにいてひどい目にあった次第
ちなみに普通のCollectionではなんの問題もないから
いったんcollect($collection->all())なんてやって変換すれば大丈夫
0920nobodyさん垢版2017/04/24(月) 22:48:51.66ID:???
なるほど。まぁMapとListの区別がないPHPらしい挙動ではある。
0921nobodyさん垢版2017/04/24(月) 23:19:08.99ID:???
しかしmap()は普通のCollectionを返すはずなんだよな・・・
俺のケースでなんでEloquent\Collectionのままだったのかよくわからなくなってしまった
まあもう問題は解決したからいいんだけど
そう考えるとあまり普通には起こらないはずの現象ではあるな
mapにしてもfilterにしても結果はEloquentではなくIlluminate\SupportのCollectionだから
0922nobodyさん垢版2017/04/29(土) 12:42:16.78ID:???
Laravelけっこういいのになんでこんなに過疎ってるん?
0923nobodyさん垢版2017/04/29(土) 14:23:42.45ID:???
特に語ることがないからかな?
0924nobodyさん垢版2017/04/29(土) 15:57:42.05ID:???
Laravelは他のフレームワークと比較してライブラリとかプラグインを作りやすいと思うけどPackagistとかで公開してる人いる?
0925nobodyさん垢版2017/04/30(日) 01:11:01.26ID:???
そもそもフレームワークなんて語ることないんじゃね?
質問くらいなもんでしょ
0926nobodyさん垢版2017/04/30(日) 13:44:36.85ID:???
不満でもあればぐちぐち書き込めるけどそれも特にないw
0927nobodyさん垢版2017/06/08(木) 14:36:07.83ID:PfNx38oZ
質問ですが、
・CRUD処理の Create(レコード追加)と Update(レコード更新)のアクションに
 おいて、それぞれ「保存(Save)」のメソッドを定義するときに、
 これらは同一でいいんですか?分けたほうがいいんですか?
0928nobodyさん垢版2017/06/08(木) 14:44:45.42ID:???
通常は新規時にinsert、更新時にupdateクエリを走らせる、
そんでinsert時は大抵idは未指定でDBの自動生成に任せるはず

ラッパーのupsert関数を用意するなら同一に出来るけど、
結局内部ではidの有無で切り替える処理になると思う
0929nobodyさん垢版2017/06/08(木) 18:42:22.99ID:???
モデルのsave()使うだけでダメな理由あるんだっけ?
0930nobodyさん垢版2017/06/08(木) 19:04:12.02ID:???
ないと思う
むしろupdateを使うとイベントが発火しないから
よほど大量の更新じゃない限りsaveでいいんじゃないかと
0931nobodyさん垢版2017/06/10(土) 15:58:20.49ID:???
html を出力する際に、ブラウザがレンダリングするのに不要な改行やスペースを削除する機能はあるのでしょうか?
Twig でいう spaceless のような機能のことです

詳しい方どうか教えてください
0932nobodyさん垢版2017/06/10(土) 17:38:34.79ID:???
Laravel Html Minify とかで検索するといくつか見つかるね。textareaとかpre、scriptタグのこと考えるとあんまりおすすめできないけど。
gzip圧縮しちゃったほうがよくない?
0933nobodyさん垢版2017/06/11(日) 13:38:49.29ID:???
white-spaceをpreにしてる事はあんま無いとは思うけどそのHTML次第だからなんとも言えない
0934nobodyさん垢版2017/06/13(火) 13:07:59.05ID:???
LaravelってsymfonyのFormみたいなのないの?
使うならSymfonyのフォーム入れて使えってことか
0935nobodyさん垢版2017/06/13(火) 22:49:58.09ID:???
よく分からんけどフォームの実装も楽よ
0939nobodyさん垢版2017/06/21(水) 23:58:08.51ID:/PupAqaZ
最近laravel勉強し始めたんですが
サーバエラーが起こった場合のエラー内容がわかりづらくて困ってます
コードの何処かに打ち間違いとかがあった時に
どこでエラーになっているのかとかがすごくわかりづらいんですが
皆さんどうやって見分けてますか?
コツなどあれば教えてください
0941nobodyさん垢版2017/06/22(木) 01:09:54.25ID:???
ごめん不親切だったわ
logger使ってログファイルをtail -fするだけでも大分捗るぞ
0943nobodyさん垢版2017/06/22(木) 12:07:11.05ID:???
>>939
productionモードでやってない?devにすると行数まで出てたような。
0944nobodyさん垢版2017/06/22(木) 12:18:18.60ID:???
例えばEloquentモデルで持前のメソッド名を間違えたときに
フレームワーク内でのエラーになっちゃうからね
マジックメソッドの弊害
0945nobodyさん垢版2017/06/22(木) 12:18:58.89ID:???
持前じゃない、自前ね
なんでこんなのが変換候補に出てくるんだ・・・
0946nobodyさん垢版2017/06/22(木) 13:33:04.40ID:???
でも、スタックトレースにはどっかに自分の書いたコードのファイル名と行数が書かれてるわけだから、どこで間違えたのかを見つけるのはそこまで難しくもなくない?
0948nobodyさん垢版2017/06/22(木) 17:42:19.13ID:Hbr/qHaC
やっぱ慣れるしか無いんですね
メソッド名を1文字間違えてたときとか原因わかるまで結構時間かかってしまったんですが
とりあえず頑張ってみます
0949nobodyさん垢版2017/06/22(木) 17:48:40.50ID:???
>>948
そういうのはLinterの出番
「PHPMD」でググると幸せになれるかもしれない
0950nobodyさん垢版2017/06/22(木) 17:53:25.30ID:???
逆にマジックメソッドは正しくlintできるんだろうか
スコープとかミューテータとか
そのままの名前のメソッドは存在しないわけだけど
0951nobodyさん垢版2017/06/24(土) 20:52:50.18ID:???
APIのルーティングはどこに書けばいいですか?
あと普通のルーティングと書き方って何か違いますか?
同じところに書くと何かまずいですか?
0952nobodyさん垢版2017/06/24(土) 21:08:47.33ID:???
最新版ならapi.php
ただしweb.phpのルートとはセッションが繋がらないので要注意
単にajaxの受け口など自サイト専用のapiなら
web.php側に書くほうがなにかと楽だと思う
多分ベストプラクティスからは外れるんだろうけど
0954nobodyさん垢版2017/06/26(月) 00:12:31.46ID:???
モデルのリレーションで複数キーの場合どうやんの?
いちいちジョインするの面倒っすわ
0955nobodyさん垢版2017/06/26(月) 00:23:18.70ID:???
>>954
複合キーでJOINする必要があるってこと?
0957nobodyさん垢版2017/06/27(火) 14:39:39.14ID:???
366 :nobodyさん 2017/05/29(月) 16:07:39.16 ID:6v4UcGhE
今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744

367 :nobodyさん 2017/05/29(月) 16:28:06.55 ID:6v4UcGhE
ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/

372 :nobodyさん2017/05/29(月) 19:10:37.12 ID:???
Railsでシステム作って納品する

Railsはマイナー、メジャーのアップデートが半年以内に必ずある

客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく

気づいてから1年以内に通知すれば、5年間無料保証ゲット

つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな

376 :nobodyさん2017/05/30(火) 09:20:20.09 ID:L5po86sS
>>378>>379>>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
0958nobodyさん垢版2017/06/27(火) 18:57:04.50ID:???
勝手にアップデートしたなら動作保証対象外だろw
0959nobodyさん垢版2017/06/27(火) 21:28:51.88ID:QIWsdprH
普通リリース後はバージョン固定だよな
「バージョン○○まで面倒見る。それ以降は知らね」と契約するもんだ
0960nobodyさん垢版2017/06/28(水) 09:16:09.12ID:???
瑕疵担保責任(かしたんぽせきにん)

瑕疵担保責任のポイント

民法改正で事実上期限が「無制限」になった
バグや設計のミスなどは、瑕疵担保責任
納品物に不具合があれば損害賠償を請求される可能性もある

http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt

改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、
通知後5年以内は修正や報酬の減額などを求められるとしている

全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html
0961nobodyさん垢版2017/06/28(水) 09:21:58.02ID:???
ポイント1:修補や損害賠償、契約解除の期限がなくなる

従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、
11年後まで請求可能なのだ。

もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。
0962nobodyさん垢版2017/06/28(水) 09:28:40.80ID:???
>>959

ライバル社とのコンペで負けるな。ライバル社は無償保証を提案してくるだろうから
0963nobodyさん垢版2017/06/28(水) 13:49:24.54ID:m56NYRqQ
>>962
それはバージョンアップしない前提だろ
そりゃバグが出ればメンテするわな
0964nobodyさん垢版2017/06/29(木) 06:56:14.70ID:q2F1TRfK
laravelの「イベント」ってどういう意味なんでしょうか?
調べてもよくわかりません
どなたかわかりやすく解説してくれませんでしょうか?
0965nobodyさん垢版2017/06/29(木) 08:18:17.60ID:???
何かが起きたときに自動で何か処理したいとする
その「きっかけ」となる何かのことをイベントと言う
一般的にね

LaravelというかEloquentのイベントはデータ作成や更新といった「きっかけ」で
何らかの処理を自動で行わせるために使う
会員が最低一つはメルマガを購読するとしたら
会員モデルのcreatedイベントにメルマガ購読モデルの作成を仕込んでおけば
あとは会員を作成するだけでいいというわけ
というかプログラムのどこで作成しても必ずメルマガ購読データも作られるようになる

まあ処理し忘れを防ぐ機能とも言える
マメな人なら必要ないとも言えるかもしれん
0966nobodyさん垢版2017/06/29(木) 10:20:39.88ID:???
>>963
>そりゃバグが出ればメンテするわな

当たり前だ!ただでやれ。金は出さないよ。法律改正されたし、
アップデートごとにバグが出たら、何十年も無限無償でよろしく!
バックれたら瑕疵担保責任法で訴えるからな!
わかったか!
0967nobodyさん垢版2017/06/29(木) 10:32:27.55ID:???
>>965
なるほど
最初はイベントなんか使わなくても対象の箇所に適当なメソッドを挟めばいいんでは?と思ってたんですが
もっと深い箇所に埋め込みたい場合はイベントの方がいいんですね
ありがとうございました
0968nobodyさん垢版2017/06/29(木) 10:44:33.12ID:???
うむ
深いところ、というよりはデータ自身に付随させる
という考え方のほうがいいかも
Laravelというかこの手のフレームワーク全般に言えることでもある
ミューテータとかもそんな感じでしょ
めんどくさい処理はデータモデルに任せて表では楽しようという
0969nobodyさん垢版2017/07/01(土) 07:23:34.90ID:???
>>968
なるほど!
大変わかりやすい解説ありがとうございました!
0970nobodyさん垢版2017/07/08(土) 10:23:06.09ID:UEbKHg6v
Laravel使ってるんですが
正直使いづらくて何がいいのかさっぱりわかりません
ルーティングは機能ごとに毎回追加しないといけないし
nameスペースもいちいち追加するのがめんどくさいし
吐き出されるエラー内容もわかりにくいし
ドキュメントも充実してないし
こんなフレームワーク使うよりは
Codeigniterの方が使いやすくていいと思うんですがどうでしょうか?
0972nobodyさん垢版2017/07/09(日) 02:47:07.70ID:7eNkpAL2
>>970

数人かそれ以下のPGで制作する場合は
Symfonyやその派生の巨大フレームワークは
却ってボトルネックとなると思う。
PG兼SE1人の制作環境では修行しているような気分になるはずだ。

しかし多数のPGを使って制作する場合は
リーダーが外枠(フレームワーク内のフレームワーク)をきっちり準備すれば
スムーズに事が運ぶと思われる。

俺は大人数での制作に関わる気は毛頭ないから
CodeIgniterの高速性を取るし(最近はCodeIgniterすら使わない)
Symfony系の巨大フレームワークは壮大な無駄にしか見えない。

ドキュメントが充実していないというのは誤解のような気がする。
Symfony系のフレームワークは色々な団体・個人が開発したソースの集合体であり
どこかが一括してドキュメントに責任を負っているわけではないのだろう。
Symfony系が粗大ゴミにしか見えない者にとってはどうでも良いことだが。
0973nobodyさん垢版2017/07/09(日) 22:55:59.60ID:???
Laravelの良さはコマンド一つでサクサク環境作れることじゃない?
SQLインジェクション対策とか、ログイン関係のセキュリティ対策も完備しているし、
コマンドも自分で簡単に追加できるし、普通にフレームワークとしての機能は完備してる

解説は確かに昔少なかったけど、解説本も出たんだから買えば解決
ただ、公式の解説や、本体を翻訳してくれてる有志が居るし恵まれてる方でしょ
0974nobodyさん垢版2017/07/10(月) 01:24:21.48ID:???
Laravelで数少ない不満はhasOne :throughを頑なに拒み続ける事
0975nobodyさん垢版2017/07/11(火) 00:26:35.73ID:???
Laravelのどこがドキュメント恵まれてないんだ?
CodeIgniterの方が負の遺産抱えすぎて悲惨だろw
未だにアンダースコア区切りでやってんのかよ
0976nobodyさん垢版2017/07/11(火) 03:37:43.61ID:MJfoqvFM
ApacheできないけどLaravelできますか?
PHPは割りと理解している(.so 関係, peclモジュールとかは怪しいレベル)
Composerはギリ
Railsはできる。
JavaScriptは結構得意。(jQery, Reactいける。)
MySQLも使い慣れている(スキーマとかGRANTもできる)
0977nobodyさん垢版2017/07/11(火) 06:45:29.11ID:???
Apacheできないってどういう意味だろ
設定できないってことかね
0978nobodyさん垢版2017/07/11(火) 08:31:50.54ID:???
その書き方からすると全部怪しいw
0979nobodyさん垢版2017/07/11(火) 11:08:24.69ID:???
Laravel使うようになって初めてcomposer使うようになって、未だによくわかってないけど問題ない
Apacheの設定もいじるのはDocumentRootぐらいだと思う、/以外にLaravel設置しようとしたら大変かもしれないが
0980nobodyさん垢版2017/07/11(火) 11:23:38.64ID:???
vagrantさえ動かせれば何も考えんで済むよね
windowsだとなにかとトラブって動かせたことがないが
まあxampp入れれば環境はすぐできる
0981nobodyさん垢版2017/07/11(火) 19:15:44.39ID:MJfoqvFM
>>980
そうそう、xampp頼みで Apacheは勉強不足なんだわ。
vagrant本気でやってみようかな?
Dockerは勉強したんだけどね、誰かが構築済みのやつを拝借してしまえばいいわけだ。
つまりxamppの代わりをvagrantにやらせるってことでしょ?
0982nobodyさん垢版2017/07/11(火) 21:18:14.18ID:utPd6rdE
>>981
違うよ。
xamppはwindows版apacheとmysqlとphpなどのセット。
vagrantはvirtualboxやvmwareでlinuxの環境を簡単に作るためのツール。
サーバの設定は自分でやらないといけない。
xamppみたいにボタン押せばとりあえず使えるといったシロモノじゃない。
それでも俺はvagrant+virtualboxをすすめる。
PGでもサーバの知識は必須なので、今のうちにやっといた方がいいよ。
0983nobodyさん垢版2017/07/11(火) 21:24:09.75ID:???
LaravelにはHomesteadがあるから
サーバの知識何もいらんよ
0984nobodyさん垢版2017/07/12(水) 13:42:30.03ID:???
生涯Laravelならそれでもいいかもだけどそうも行かないだろうし
機会を見てサーバの知識は持っておいたほうが良いとは思うけどね
0985nobodyさん垢版2017/07/12(水) 13:48:42.56ID:???
もちろんそうだ
vagrantさえ動けば何も考えんでいいと書いたのは
homesteadがあるから、という話だよ
vagrantを動かした上で色々設定の必要ありというのは
ことlaravelに関する限り当てはまらないということ
0986nobodyさん垢版2017/07/12(水) 20:48:44.74ID:w9egFAoI
どのos imageを使うかにもよるが、サーバの知識無しではしんどいよ。
サラのimageだったらphpから入れる必要あるしね。
けっこう面倒。
でもやる価値はある。
0987nobodyさん垢版2017/07/12(水) 22:44:03.70ID:???
サーバの知識皆無で本番サーバの設定どうやんのよ
0988nobodyさん垢版2017/07/13(木) 07:40:21.83ID:???
レンタルサーバじゃあかんの?
0989nobodyさん垢版2017/07/13(木) 21:13:27.21ID:???
いいけどまったく設定しないわけにもいかんだろ
0990nobodyさん垢版2017/07/14(金) 23:36:54.31ID:???
とりあえずLaravelやりたいだけならxamppでいいべ。
作ってからアップロードするときにでもサバの勉強すりゃいいし。
なんでもかんでも手を出すと、結局何もできないことになる。
0991nobodyさん垢版2017/07/21(金) 01:28:51.97ID:???
symfonyのBundleみたいにひとまとまりの汎用パッケージにするのってどうやるの?
0992nobodyさん垢版2017/07/21(金) 01:30:33.52ID:???
失礼ドキュメントあったわ
0993nobodyさん垢版2017/08/05(土) 14:12:45.24ID:???
コントローラからビューに渡すときにグローバル関数使ったり、設計が滑稽過ぎるだろ…
誰だこんな変なフレームワーク流行らせたやつ
0994nobodyさん垢版2017/08/05(土) 14:46:37.15ID:???
ヘルパ関数が嫌ならViewのファクトリを注入すればいいだけだが
0995nobodyさん垢版2017/08/05(土) 14:50:05.96ID:???
>>994
フレームワーク側でそんな設計にしてるのが間抜けだって言ってるのがわからない?
0996nobodyさん垢版2017/08/05(土) 14:52:52.48ID:???
>>994
そうやって自分ルールを増やして可読性を下げたりしないためのフレームワークなのに
0998nobodyさん垢版2017/08/05(土) 15:39:55.12ID:???
Viewファサードを使うか、viewヘルパ関数を使うか、Viewファサードの移譲先のクラス\Illuminate\View\Factoryを直接使うか、フレームワーク側では複数の選択肢が用意されているので
どれを使うかは利用者が決める必要がある
複数人で開発するならその辺りの規約を決めておかないとカオスになるよなー

Laravelの思想的には記述量が短いファサードやヘルパ関数が推奨なんだろうけどおっしゃるとおり設計はお察し
0999nobodyさん垢版2017/08/08(火) 16:32:20.23ID:mXDJEFH/
Laravel5.4.25使ってるんだが、bootstrapのdatetimepickerの導入方法を分かりやすく教えてくれないか…。
英語の記事は見つかってその通りにやってるつもりなんだが、そもそもjQueryが読み込めてないのか「$ is not defined」とかでエラーが出て進まない。
そもそもLaravelMixだっけ?あれで導入しなきゃいかんの?
1000nobodyさん垢版2017/08/08(火) 17:21:16.04ID:???
>>999
知らんけど「$」を「jQuery」に書き直してもダメ?
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 1666日 6時間 19分 26秒
10021002垢版Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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