【PHP】Yii Framework
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/12/10(金) 00:41:11ID:???公式
http://www.yiiframework.com/
チュートリアル
ttp://www.yiiframework.com/doc/guide/
公式フォーラム
ttp://www.yiiframework.com/forum/index.php?/forum/21-japanese/
0725nobodyさん
2012/02/19(日) 20:23:12.13ID:???state作成いたら成功した!
>>724
新しいscenario選択したらデフォルトのvalidateは利用されない仕組みなのかな
ちょっと試してみる!
二人ありがとYii
0726nobodyさん
2012/02/19(日) 21:01:16.48ID:???ただ、俺はvalidateの切り分け以外にscenarioを使うのはおすすめしないな
なんか前にもこんな話したよね
0727nobodyさん
2012/02/19(日) 23:31:59.69ID:???モデルでYii::app()->controller->action->idを使ってさ
あとはプロパティがempty時はこうする、とかさ。いろいろあるさ〜
0728nobodyさん
2012/02/19(日) 23:36:20.48ID:???0729nobodyさん
2012/02/19(日) 23:39:31.37ID:???0730nobodyさん
2012/02/20(月) 01:14:34.72ID:???modelのclass変数を作成して
それをsave()前に$model->state=falseとかした感じ
beforeSave()の中で$this->stateでifして処理振り分け
0732nobodyさん
2012/02/20(月) 03:43:08.62ID:b6WVXuP+あとから見た時、分かり難いから
scenarioはruleを切り分けるという目的で追加されているのに、
他の目的で使うと、後で見た時になんだこれってなっちゃう危険がある
>>727の方法もいいね、っていうか前の話でも出てたなw
0733nobodyさん
2012/02/20(月) 06:00:09.92ID:???stateプロパティをモデルにもたせるのが良い方法かな
0734nobodyさん
2012/02/20(月) 19:00:30.74ID:???例えばbeforeSave()で分岐したいがためにrulesにscenarioを設定するのは違うけど
結果、$this->scenario !== 'insert'みたいのを利用できるのであれば、それはそれで使ってもかまわないってことだよね?
0735nobodyさん
2012/02/20(月) 20:29:22.19ID:b6WVXuP+それもinsert以外のscenarioの意味(効果)を変えちゃうから、俺は原則、使わないようにしてるよ
でも利用した方がベターなケースもあるかもしれないし、beforeSave()を利用したくない理由が分からないのに、
scenarioを使うのはおすすめしないって言ったのは適切ではなかったかも
単に、自分ルールとしてscenarioはvalidate ruleを切り分けるためだけに使ってる、って言うべきだったかな
結局は環境(体制、設計、規模など)によって、自然で分かりやすい実装ってのも変わってきちゃうよね
0736nobodyさん
2012/02/20(月) 21:36:24.53ID:???初めて知ったわ
0737nobodyさん
2012/02/20(月) 22:16:12.46ID:???$this->scenario !== 'insert'部分は
CActiveRecord::isNewRecordを使うほうがいいですね。すみません
いろんなもので代用できる分、役割をはっきり持たせて実装するってのは大切ですね
0738nobodyさん
2012/02/21(火) 04:41:21.93ID:???configはあってるはず・・・
0739nobodyさん
2012/02/21(火) 05:23:46.97ID:???http://www.yiiframework.com/forum/index.php?/topic/10421-logging-in-long-running-console-app/
0740nobodyさん
2012/02/21(火) 05:41:14.37ID:???レベルがマッチしていないとかではないかい?
0741nobodyさん
2012/02/21(火) 13:07:06.05ID:???layoutのmain.phpとかでは使うようにしてたんだけど、
他のviewでは結局サイト名を手打ちしてしまう。
0742nobodyさん
2012/02/21(火) 22:14:58.43ID:???0744nobodyさん
2012/02/22(水) 00:24:57.94ID:FnoANuGBってことじゃね
0745nobodyさん
2012/02/23(木) 05:54:50.59ID:???モデルのrulesで設定してるんだけどここでいいのかな
ってかrulesのdefaultはどのタイミングで設定されるん?
1回目バリデーション失敗して、次送信したときまた新たに設定される?
0747nobodyさん
2012/02/23(木) 09:11:29.65ID:???0748nobodyさん
2012/02/23(木) 12:03:11.26ID:???俺はこれを使ってる。
0749nobodyさん
2012/02/23(木) 15:12:02.57ID:???http://www.yiiframework.com/doc/api/1.1/CTimestampBehavior
0750745
2012/02/23(木) 15:20:41.42ID:???一応うまくいってるけど
あと、ユーザー登録のアクティベートキーの生成&attributesに設定とかも
rulesのdefalutでやってるけど
array('created', 'default', 'value'=>time()),
array('actkey', 'default', 'value'=>$this->createActkey(), 'on'=>'register'),
0751nobodyさん
2012/02/23(木) 15:47:38.45ID:???http://www.yiiframework.com/wiki/10/how-to-automate-timestamps-in-activerecord-models/
0752nobodyさん
2012/02/23(木) 16:49:23.70ID:???1カラム更新時にupdate_timeも更新したい場合は、例えば$this->update(array('hoge', 'update_time'));みたいにすればOKです
<?php
class ActiveRecord extends CActiveRecord
{
public function behaviors()
{
if ($this->hasAttribute('create_time') && $this->hasAttribute('update_time'))
return array(
'CTimestampBehavior' => array(
'class' => 'zii.behaviors.CTimestampBehavior',
'setUpdateOnCreate' => true,
),
);
else
return array();
}
}
0753nobodyさん
2012/02/23(木) 17:22:27.23ID:???これ、cakeでは'callback' => falseみたいのありましたよね?ほしいですねyiiにも
0754nobodyさん
2012/02/23(木) 22:28:10.74ID:???0755nobodyさん
2012/02/26(日) 12:56:19.56ID:???そういうファイルはどのフォルダに入れるのが普通なんでしょうか?
0756nobodyさん
2012/02/26(日) 15:20:43.51ID:???エラーが出るのですがfopen()はそもそも使えないのでしょうか
0757nobodyさん
2012/02/26(日) 17:49:48.25ID:???なら何も問題ないんですよね。
protected/controllers/test.phpで
file('../../test/test.txt');
だとエラーになります。
webrootにあるtestフォルダのtest.txtを読むにはどうしたらいいのでしょうか・・・
0758nobodyさん
2012/02/26(日) 18:43:23.62ID:???http://www.yiiframework.com/extension/cfile/
0760nobodyさん
2012/02/26(日) 19:23:27.33ID:???URL上のパスではなく、OSの上でのパスな。
もしくは絶対パス使え。
ファイルの配置場所は、Web上からも見れていいものなら、Webルート配下でもなんでもOK。
見せたくないなら、それ以外の場所にするか、.htaccessなんかでそのディレクトリに制限かけとけ。
yiiならprotected/以下はアクセス制限かかるだろう。
一般的にどこにおくか、というよりは、そのファイルが何のファイルか、
どのような配置にあるのが意味が通じやすいか、とかそういうのを考えて配置すれば良いよ。
設定ならconfig/なりsettings/なりつくってその下にまとめたり、ログならlogs/にまとめる、とかそういう。
変数名どうするかとか、クラス名どうするかとか、パッケージどうわけるかとか、そういったのと同じ。
あと、パソコン初心者()じゃないんだから、「エラー」じゃなくて、そのエラーの内容からちった判断しれw
0761nobodyさん
2012/02/26(日) 19:45:32.43ID:???>現在のカレントディレクトリがどこかを確認しれ。
どうしてこれをやらなかったのかorz
file(getcwd().'/test/test.txt');
であっさり解決しました。人に聞く前に確認しろとorz
完全にあまえでした、すみません。
ファイルの配置のお話も勉強になりました。
見られておkなのでルート直下にディレクトリつくって放り込みました。
>そのエラーの内容からちった判断しれw
恥ずかしいですほんとにorz
「そんなファイルないよ」ってエラーでした。
あーだこーだやってたのが解決してとてもすっきりしました。
親切に教えていただいて、本当にありがとうございました。
0762nobodyさん
2012/02/26(日) 21:35:39.39ID:???あと、これをこうしたら、すごく便利になったとか
0763nobodyさん
2012/02/29(水) 11:54:14.13ID:???このスレの住民は初心者に対して高圧的な奴が多いから
0764nobodyさん
2012/02/29(水) 14:41:37.99ID:???0765nobodyさん
2012/02/29(水) 17:23:22.19ID:???0766nobodyさん
2012/02/29(水) 23:42:39.00ID:Ha59kcRM個人的にはそういう奴を見つけたらソフトに排除するようにしてるんだけどね
そもそも2chの影響力なんてほとんどないっていう根本的なところに気付くべき
結局、日本語の情報が少ないのが原因でしょ
0767nobodyさん
2012/02/29(水) 23:49:06.05ID:???初心者の質問がきても威嚇攻撃するから流行らない
結果、利用者がいなくて日本語の情報も少ない
0768nobodyさん
2012/02/29(水) 23:52:23.66ID:???0769nobodyさん
2012/03/01(木) 00:06:40.94ID:???なんでだろう。
0770nobodyさん
2012/03/01(木) 01:35:56.56ID:???0771nobodyさん
2012/03/01(木) 02:17:30.16ID:???0773nobodyさん
2012/03/03(土) 22:35:47.81ID:???array('password', 'length', 'min'=>6, 'max'=>20, 'message'=>'6〜20文字で入力してください。'),
実際に表示されるエラーメッセージ
パスワード が短過ぎます(最小 6 キャラクタ)。
ちなみに、unique、compareでは指定したメッセージが表示されました。
0774nobodyさん
2012/03/03(土) 23:27:49.61ID:???0775773
2012/03/03(土) 23:44:52.29ID:???http://www.yiiframework.com/forum/index.php/topic/21942-length-rule-message/page__p__107400__hl__me+age+length#entry107400
0777nobodyさん
2012/03/05(月) 00:57:03.92ID:???array('password', 'length', 'min'=>6, 'max'=>20, 'tooShort'=>$message , 'tooLong'=>$message , 'allowEmpt'=>false);
という感じかな?なるほど勉強になった。ありがとう。
0778nobodyさん
2012/03/05(月) 00:57:45.13ID:???0780nobodyさん
2012/03/06(火) 13:01:53.00ID:???0781nobodyさん
2012/03/06(火) 16:43:43.22ID:???特殊なバリデートの時は、独自で作ればいいだけだし。
0782nobodyさん
2012/03/08(木) 14:36:30.75ID:???0783nobodyさん
2012/03/08(木) 14:48:17.09ID:???PDO使ってるのが導入の障壁になってんの?
0784nobodyさん
2012/03/08(木) 18:32:32.73ID:i+TebrmPPDOが使えない環境って例えばどういうの?
0785nobodyさん
2012/03/09(金) 12:55:26.85ID:???0786nobodyさん
2012/03/09(金) 15:50:42.98ID:???0787nobodyさん
2012/03/09(金) 21:41:28.62ID:???@FreeBSD
0788nobodyさん
2012/03/10(土) 10:23:30.51ID:???この嫌儲のサイトがYiiというものでつくられてるらしいんですけど
初心者でもできますか?strongタグで太字にしたりするのはできます。
0789nobodyさん
2012/03/10(土) 10:48:11.83ID:0UAYpjt7http://www.yiiframework.com/doc/guide/1.1/ja/index
ここにガイドがあります
0792nobodyさん
2012/03/10(土) 11:44:36.32ID:???Yiiは基本的に鎖国社会なので質問しても教えてくれる人を探すのは厳しいでしょう。
このスレも初心者には厳しいです。
まずはCakePHPなど国内の利用ユーザー数が多いフレームワークから始めることが成功の近道です。
Yiiから入ると問題にぶち当っても人に聞いても解決できないのは人生の無駄遣いです
0794nobodyさん
2012/03/10(土) 14:03:30.99ID:???まともに質問してるやつで無視されてる奴なんてあんまり見たいけど
0795nobodyさん
2012/03/10(土) 14:38:58.61ID:???今のところほぼ居ないに等しいような状況なのはわかってて、Yii触ったんだろうに
2chのスレが気に食わないから使わない、も個々の判断だけど
そんなくだらない理由で意固地になることはすごく勿体無い判断だと思うわw
0797nobodyさん
2012/03/10(土) 15:25:26.75ID:???くだらない事に躍起になってる奴に、事実を突きつけて煽ったりして
程度の低い争いを繰り広げようとする人は、たしかに必要ないな。
相手は意固地になってるんだから、何を言っても突っかかってくるだろう。
相手をする事自体が間違い。>>792みたいなのはスルーするのが正解。
0798nobodyさん
2012/03/10(土) 15:45:23.77ID:???0799nobodyさん
2012/03/10(土) 16:00:19.34ID:???んな煽りでイライラしてるほうがおかしい
0800nobodyさん
2012/03/10(土) 16:00:42.98ID:???0801nobodyさん
2012/03/10(土) 16:37:26.60ID:???以下のようにやってるんですけど、これでいいんでしょうか?
無駄とかあったら教えて欲しいです。
■UserController
public function actionIndex() {
$model = new Post; // ←tweetするフォーム
$user = User::model()->findByPk(Yii::app()->user->id);
$this->render('index',array(
'model'=>$model,
'user'=>$user,
));
}
■views/user/index.php
<div><?php echo $user->username; ?></div>
<div><?php echo $user->profile; ?></div>
<!-- あとはpostフォームとかいろいろ -->
0802nobodyさん
2012/03/10(土) 18:01:31.53ID:???0804801
2012/03/10(土) 18:18:55.57ID:MBX05hQsよろしくお願いします。
0807nobodyさん
2012/03/10(土) 18:51:47.82ID:0UAYpjt70808801
2012/03/10(土) 19:09:18.46ID:MBX05hQsこれでいいのかなぁと漠然とした不安があったので助かりました。
0809nobodyさん
2012/03/12(月) 15:21:13.03ID:???0810nobodyさん
2012/03/12(月) 15:29:30.95ID:???0811nobodyさん
2012/03/12(月) 15:51:07.03ID:???0812nobodyさん
2012/03/12(月) 17:00:35.79ID:Qdae9kKUただ、英語アレルギーは結構あるよね
やっぱカリスマが牽引しないとコミュニティは成長しないんでしょ
0813nobodyさん
2012/03/13(火) 16:51:05.10ID:???普通の日本人は、英語ってだけで見ようともしないよ。
英語力がどのくらいないのかは分からないけど、まああまりないと思うよ。
別に日本国内で英語いらないし。
0814nobodyさん
2012/03/13(火) 18:49:20.87ID:???さくらのレンタルサーバーでも使えますか?
さくらで使えたら即移行するんですが・・・
0815nobodyさん
2012/03/13(火) 18:56:09.19ID:OgH0Qw3SAPC使えない説があるぞ
0817814
2012/03/14(水) 13:54:04.14ID:???最初は共用で、
規模が大きくなってきたらVPSやらに移ってAPC使えばおkですね。
てか、Yii楽しすw
0818nobodyさん
2012/03/14(水) 20:25:32.84ID:zqK1VJfD何も使わないよりはいいと思うよ
0819nobodyさん
2012/03/14(水) 21:04:22.40ID:832chJcq0820nobodyさん
2012/03/15(木) 07:02:06.97ID:E3IxfR1a新日本テクトスという会社を追われ、その後どうしてよいかわからなくなりました。
だけど私の大好きな尾崎豊の歌に励まされ、夢であるプロのクリエイターを目指すことにしました。
何度も挫けそうになりましたが、尾崎豊の歌を聞きながら自分を励ましています。
今も尾崎豊の歌のおかげで、夢を諦めずにCGアニメの製作を続けられています。
とりあえず、以下の動画を見てください。一生懸命作ったもので、自分では既にプロレベルの傑作だと思ってます。
できればみなさんのご意見、ご感想を聞きたいです。
新しいラダニアムの翼(new wing of radaniam part T) .mp4
http://www.youtube.com/watch?v=PRPJ69rVgbE
題名”ラダニアムの翼その1(A wing of radaniam_partT).mp4”
http://www.youtube.com/watch?v=WTde4RdA5LU
私の世界観の全てを凝縮した力作です。hekenekoワールドをご堪能あれ。
0821nobodyさん
2012/03/15(木) 12:59:31.83ID:???0822nobodyさん
2012/03/15(木) 19:23:03.36ID:???調べたんだけど、いまいち分からなかった;
サンプルコードも、バリデーションやトランザクションを考慮してなかったり・・・
0823nobodyさん
2012/03/15(木) 20:37:46.80ID:???■ このスレッドは過去ログ倉庫に格納されています