私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【PHP】フレームワーク CakePHP 11ホール目【v1.3】
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※sage推奨
※質問時もsageること
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※sage推奨
※質問時もsageること
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
Userというモデルから $this->User->find("all");
とすると、Userという配列の下に情報が入っている配列を取得するのですが、
Userの部分をなくしたものを取得することはできないでしょうか?
一つ一つデータ取る時、$item['User']['api']ではなく、$item['api']だけ書くほうが楽なもので。
[0] => Array
(
[User] => Array
(
[id] => 1
[api] => google
[coupon_id] => 6113
)
)
[1] => Array
(
[User] => Array
(
[id] => 2
[api] => agi
[coupon_id] => 5982
とすると、Userという配列の下に情報が入っている配列を取得するのですが、
Userの部分をなくしたものを取得することはできないでしょうか?
一つ一つデータ取る時、$item['User']['api']ではなく、$item['api']だけ書くほうが楽なもので。
[0] => Array
(
[User] => Array
(
[id] => 1
[api] => google
[coupon_id] => 6113
)
)
[1] => Array
(
[User] => Array
(
[id] => 2
[api] => agi
[coupon_id] => 5982
http://cakephp.1045679.n5.nabble.com/Find-Output-Thoughts-why-the-not-remove-ModelName-td1334722.html
同じような質問をしているのを見つけました。
しかし、回避方法みたいなものはないっぽいので、仕様と諦めるしかないのかな。
同じような質問をしているのを見つけました。
しかし、回避方法みたいなものはないっぽいので、仕様と諦めるしかないのかな。
複数のフィールドを一度に更新することはできないでしょうか?
マニュアルやcake辞典を読んだところ、
$this->Model->set('id',4);
$this->Model->saveField('buy_count', 3);
$this->Model->saveField('sold_out', 1);
このようにすれば、複数のフィールドを更新できるのですが、いくつものフィールドを
更新した場合、何行も繰り返さないといけない。。
こんなまどろっこしいことせずに、saveとconditionで一気に上書きするのがスマート
なやり方なのでしょうか。
マニュアルやcake辞典を読んだところ、
$this->Model->set('id',4);
$this->Model->saveField('buy_count', 3);
$this->Model->saveField('sold_out', 1);
このようにすれば、複数のフィールドを更新できるのですが、いくつものフィールドを
更新した場合、何行も繰り返さないといけない。。
こんなまどろっこしいことせずに、saveとconditionで一気に上書きするのがスマート
なやり方なのでしょうか。
最近、フレームワーク無しのPHPプログラムを書いてるんだけど、
いつの間にかCake風の構成にしてた。
多重配列って長くなって面倒だけど、わかりやすいよね。
いつの間にかCake風の構成にしてた。
多重配列って長くなって面倒だけど、わかりやすいよね。
生成されたpotを弄ってviewの中のctpファイルはローカライゼーション出来るようになったんだけど、
バリデーション(モデル)とか
プログラム上での(コントローラー)表記を
ローカライゼーションしたい場合は
どうしたらいいの?
バリデーション(モデル)とか
プログラム上での(コントローラー)表記を
ローカライゼーションしたい場合は
どうしたらいいの?
cakephpで質問です。
idを主キーにしていて
データの取り出しで
this->model->
findAllByName($hoge)
として
this->model->save($this->data)
した場合、上書き更新ではなく新レコード挿入になりますよね?
主キーでモデルのデータを取り出さない限り新レコード挿入になるのは分かるのですが、CakePHP仕様だと主キーを一つしか扱えないのでupdateAll()を使うしかないのでしょうか?
主キー以外のフィールドでの検索対象の
レコードを更新したい場合、
スマートなやり方だと、どういうやり方が一般的でしょうか?
idを主キーにしていて
データの取り出しで
this->model->
findAllByName($hoge)
として
this->model->save($this->data)
した場合、上書き更新ではなく新レコード挿入になりますよね?
主キーでモデルのデータを取り出さない限り新レコード挿入になるのは分かるのですが、CakePHP仕様だと主キーを一つしか扱えないのでupdateAll()を使うしかないのでしょうか?
主キー以外のフィールドでの検索対象の
レコードを更新したい場合、
スマートなやり方だと、どういうやり方が一般的でしょうか?
テーブル名をつけるときに
users_codesのようにアンダーバーをつけてもいいですか?
その場合は外部からアソシエーションするときはusers_codes_idでok?
またフィールドにもbirth_dateのようにアンダーバーを使ってもいいですか?
users_codesのようにアンダーバーをつけてもいいですか?
その場合は外部からアソシエーションするときはusers_codes_idでok?
またフィールドにもbirth_dateのようにアンダーバーを使ってもいいですか?
>>17
絞り込む際のフィールドが主キーでなくても、それに合わせて上書き更新できるんですね!
ということは
$res=this->model->findAllByName($hoge);
this->model->save($result);
でいけるということですね!
普通、this->model->hoge
みたいにデータを取得しにいったら
自動的に$this->dataに結果が格納されるもんじゃなかったでしたか?
絞り込む際のフィールドが主キーでなくても、それに合わせて上書き更新できるんですね!
ということは
$res=this->model->findAllByName($hoge);
this->model->save($result);
でいけるということですね!
普通、this->model->hoge
みたいにデータを取得しにいったら
自動的に$this->dataに結果が格納されるもんじゃなかったでしたか?
CakePHPだと仮に10万レコード(10フィールド)あるようなテーブルへのアクセスでもサクサク動きますか?
レコードが膨大な数になったときの工夫とかあるのかな?
それとユーザー写真をアップロードさせたら、どういうふうに管理すればいいですか?
データベース側はあくまでファイル名を記録しておいて、画像はwebroot/image/フォルダ内に一括して10万ファイルとかですか?
レコードが膨大な数になったときの工夫とかあるのかな?
それとユーザー写真をアップロードさせたら、どういうふうに管理すればいいですか?
データベース側はあくまでファイル名を記録しておいて、画像はwebroot/image/フォルダ内に一括して10万ファイルとかですか?
>>18
普通といわれても、やってみた結果がそうだっただけだからなぁ。
一応もっともらしい事を書くと、とあるModelのクラスのメソッドを呼んだだけで、
別のクラスであるControllerのメンバ変数に勝手に値を代入ってのは、
普通はしないと思うぞ。越権行為すぎる。
>>19
http://book.cakephp.org/ja/view/903/%E3%83%A2%E3%83%87%E3%83%AB%E3%81%A8%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AE%E8%A6%8F%E7%B4%84
一応、peopleテーブルはPersonモデルなのは、変な変換が入ったとかじゃなくって、
ほんとにそういう規約。
>>20
10万レコードも扱ったこと無いからわからん。
アップロード系のプラグインが英語圏製だけど一杯あるから探したらいいんじゃないかな。
プラグインが、10万レコード考慮してるかはしらんが。
最近のファイルフォーマットだと違うかもだけど、1ディレクトリ5000ファイルくらいにしといたほうがI/O的に良いんじゃない?
普通といわれても、やってみた結果がそうだっただけだからなぁ。
一応もっともらしい事を書くと、とあるModelのクラスのメソッドを呼んだだけで、
別のクラスであるControllerのメンバ変数に勝手に値を代入ってのは、
普通はしないと思うぞ。越権行為すぎる。
>>19
http://book.cakephp.org/ja/view/903/%E3%83%A2%E3%83%87%E3%83%AB%E3%81%A8%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AE%E8%A6%8F%E7%B4%84
一応、peopleテーブルはPersonモデルなのは、変な変換が入ったとかじゃなくって、
ほんとにそういう規約。
>>20
10万レコードも扱ったこと無いからわからん。
アップロード系のプラグインが英語圏製だけど一杯あるから探したらいいんじゃないかな。
プラグインが、10万レコード考慮してるかはしらんが。
最近のファイルフォーマットだと違うかもだけど、1ディレクトリ5000ファイルくらいにしといたほうがI/O的に良いんじゃない?
ユーザー写真なら公開ディレクトで良いんでない?
非公開エリアにおいて、画像データ取得してGDで画像生成
する処理が発生するから負荷がかかるだろ。
非公開エリアにおいて、画像データ取得してGDで画像生成
する処理が発生するから負荷がかかるだろ。
フォルダに格納するときは下2桁ごとにフォルダわけたほうがいいですか?
10058.jpgは
pic/58/ フォルダの中に
17434.jpgは
pic/34/ フォルダの中にといった具合で
10058.jpgは
pic/58/ フォルダの中に
17434.jpgは
pic/34/ フォルダの中にといった具合で
俺のサイトが一日数ヒットから10万ヒットに増えたらと思うとcakephp使うのが心配
質問です。
ブログでいうブログタイトルなどの、編集する可能性はあるけど複数のレコードは存在し得ない情報ってどの様にして管理すればいいのでしょうか?
単一レコードしか存在し得ないのにRDBMSで管理するのはどうなのかなぁと思い、悩んでいます。
ネイティブPHP使ってたときは、そういった設定項目を纏めたSettingsクラスというものを作り、そのインスタンスをシリアライズしてたんですが…
Cakeだとみなさんどうしていますか?
ブログでいうブログタイトルなどの、編集する可能性はあるけど複数のレコードは存在し得ない情報ってどの様にして管理すればいいのでしょうか?
単一レコードしか存在し得ないのにRDBMSで管理するのはどうなのかなぁと思い、悩んでいます。
ネイティブPHP使ってたときは、そういった設定項目を纏めたSettingsクラスというものを作り、そのインスタンスをシリアライズしてたんですが…
Cakeだとみなさんどうしていますか?
>>32
>ネイティブPHP使ってたときは、そういった設定項目を纏めたSettingsクラスというものを作り、そのインスタンスをシリアライズしてたんですが…
Configure::write('setting.title', 'ブログタイトル'); とかできるんで、
Settingsクラスというものになれているなら、bootstrapに設定を記述するのがいいのでは
>ネイティブPHP使ってたときは、そういった設定項目を纏めたSettingsクラスというものを作り、そのインスタンスをシリアライズしてたんですが…
Configure::write('setting.title', 'ブログタイトル'); とかできるんで、
Settingsクラスというものになれているなら、bootstrapに設定を記述するのがいいのでは
WordPressだとsettingsテーブル的なのが存在してて、ブログ全体に関する設定はそこに突っ込まれてた気がする
setting_nameとvalueみたいな感じで
setting_nameとvalueみたいな感じで
パスワードを暗号化にして入力フォームでエラーで弾かれたとき、
パスワードが自動的に暗号化後の文字長になって再入力されています。
これってエラーがあった時は常にパスワードのところだけを空にしてリセットするってのが正しいのかな?
大手サイトとかも、空リセットしてますよね?
パスワードが自動的に暗号化後の文字長になって再入力されています。
これってエラーがあった時は常にパスワードのところだけを空にしてリセットするってのが正しいのかな?
大手サイトとかも、空リセットしてますよね?
ということは大手サイトも
個人ユーザーの暗号化前のパスワードは保持していないのかな?
それって普通?
結構同じパスワードをいろんなネットサービスにおいて使ってるんだけど、
サービスの運営はユーザーのパスワードは把握できない仕組み!?
個人ユーザーの暗号化前のパスワードは保持していないのかな?
それって普通?
結構同じパスワードをいろんなネットサービスにおいて使ってるんだけど、
サービスの運営はユーザーのパスワードは把握できない仕組み!?
>>35
JsHelperってjQueryなどの一部のメソッドをphpから呼べるみたいだけど、
正直jQuery書いたほうが書きやすいし、使う気にはなれないな。
普通にjQueryが書ける人ほど、あまり意味の無いヘルパーだと思ってる。
>>38
サイト運営者がユーザーのパスワード見れたらまずいだろう。
自分で運営してるほぼ個人サイトならともかく、
あまり信用できないバイトとかもスタッフに居るケースもあるんだぞ。
バイトが何かやらかしても、自分(自社)に責任が来るんだから、
パスワードの平文はやめとけ。
だから、パスワードはハッシュしか残さないのが普通だな。
非可逆なものだから、パスワードリマインダーは、
ユーザー登録と同様に、短時間有効なトークン付きの
パスワード再設定URLを、登録時のメールアドレスに送るのが良くある実装。
JsHelperってjQueryなどの一部のメソッドをphpから呼べるみたいだけど、
正直jQuery書いたほうが書きやすいし、使う気にはなれないな。
普通にjQueryが書ける人ほど、あまり意味の無いヘルパーだと思ってる。
>>38
サイト運営者がユーザーのパスワード見れたらまずいだろう。
自分で運営してるほぼ個人サイトならともかく、
あまり信用できないバイトとかもスタッフに居るケースもあるんだぞ。
バイトが何かやらかしても、自分(自社)に責任が来るんだから、
パスワードの平文はやめとけ。
だから、パスワードはハッシュしか残さないのが普通だな。
非可逆なものだから、パスワードリマインダーは、
ユーザー登録と同様に、短時間有効なトークン付きの
パスワード再設定URLを、登録時のメールアドレスに送るのが良くある実装。
>>45
ヒント:ハッシュは非可逆暗号で作られている
ヒント:ハッシュは非可逆暗号で作られている
>>46
会員制サイト作る際の、そういう細かい点まで教えてくれるサイトあったら教えて
会員制サイト作る際の、そういう細かい点まで教えてくれるサイトあったら教えて
CakePHPのctpを使いたくないです
テンプレートと入れ替える方法どこかに載ってないでしょうか
テンプレートと入れ替える方法どこかに載ってないでしょうか
類似してるかもしれないスレッド
- 【PHP】フレームワーク CakePHP 10ホール目【v1.3】 (1001) - [98%] - 2011/2/13 8:32
- 【PHP】フレームワーク CakePHP 19ホール目【v3.3】 (844) - [96%] - 2023/2/2 14:30
- 【PHP】フレームワーク CakePHP 9ホール目【v1.3】 (1001) - [96%] - 2010/11/1 2:53
- 【PHP】フレームワーク CakePHP 17ホール目【v2.4】 (984) - [95%] - 2015/1/10 2:45
- 【PHP】フレームワーク CakePHP 14ホール目【v2.1】 (1001) - [95%] - 2012/12/3 19:16
- 【PHP】フレームワーク CakePHP 16ホール目【v2.4】 (1001) - [95%] - 2014/3/3 3:00
- 【PHP】フレームワーク CakePHP 15ホール目【v2.2】 (985) - [95%] - 2013/9/7 8:30
- 【PHP】フレームワーク CakePHP 13ホール目【v2.0】 (995) - [95%] - 2012/4/23 21:16 ○
- 【PHP】フレームワーク CakePHP 8ホール目【1.3】 (1001) - [95%] - 2010/7/22 22:16
- 【PHP】フレームワーク CakePHP 17ホール目【v3α】 (955) - [93%] - 2016/11/15 20:45
- 【PHP】フレームワーク CakePHP 7ホール目【v1.2】 (1001) - [92%] - 2010/3/18 1:18 ○
- 【PHP】フレームワーク CakePHP 5ホール目【v1.2】 (985) - [92%] - 2009/3/7 4:53 ☆
- 【PHP】フレームワーク CakePHP 4ホール目【v1.2】 (1001) - [92%] - 2008/12/19 21:06 ○
- 【PHP】フレームワーク CakePHP 6ホール目【v1.2】 (933) - [92%] - 2009/8/19 2:06 ○
- 【PHP】フレームワーク CakePHP 12ホール目【笑】 (1001) - [92%] - 2011/11/8 7:01
- 【PHP】フレームワーク CakePHP 3ホール目【本命】 (1001) - [84%] - 2008/6/19 7:19 ○
トップメニューへ / →のくす牧場書庫について