トップページ⇒php
982コメント331KB

【PHPフレームワーク】Ethna【スケルトン自動作成】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/08/03(水) 21:00:39ID:TuHx69hT
国産フレームワーク、Ethnaでいい意味で手抜きなプログラミングライフを。

Ethna -PHPウェブアプリケーションフレームワーク-
http://ethna.jp/

SourceForge.jp: Project Info - Ethna
http://sourceforge.jp/projects/ethna/
0074722005/12/17(土) 02:51:25ID:???
たとえば、「Aのフォームでhogeを選択した場合にBが必須になる」くらいだったら
簡単だよね。

validateメソッドでチェックする前に、ActionFormの定義値を変えてやればいい。
HOGE_ActionClass::prepareの中で
if($this->af->get('a')=='hoge'){
$this->af->form['b']['require'] = true;
}
if($this->validate()>0){
return 'post';
}
とかかな。これがEthnaの流儀かどうかはしらんが、ActionFormを使うならこうするかな。
0075682005/12/18(日) 14:23:11ID:???
>>74
ありがとうございます。
なるほどこういう書き方ができるんですね。もっと泥臭い処理を考えてました。
細かいチェックをしたい場合は同様にフィルタをセットすればいいのかな?
(後で試してみます)

よくできてるなぁ。
0076722005/12/18(日) 21:49:38ID:???
少なくともActionFormのないフレームワークは使いたくなくなるね。

フィルタでフォームをチェックしようとするとコードが散らかるし、
Ethnaの流儀ではカスタムチェックメソッドをActionFormクラスに追加するかな。


Hoge_ActionFormにチェックメソッドを追加して、formにカスタム登録

class Hoge_ActionForm
{
var $form = array(
'hoge' => array(
// .....
'custom' => 'hogecustom,foocustom',
// .....


function hogecustom($name){

}

function foocustom(){

}
}

でイイと思うけど。詳しいhogecustomの実装方法は、Ethna_ActionForm::checkURLとか参考に。
0077682005/12/18(日) 22:29:36ID:???
>>76
すみません。フィルタじゃなくカスタムチェックでしたね。
いいかげんな事書いちゃいました。

これだけできれば十分ですね。非常に簡潔ですし。
Ethna_ActionForm::checkURL も参考にします。

#Ethnaのバージョンが低いうちにソースに目を通しておかねば。
0078nobodyさん2005/12/25(日) 00:41:18ID:???
ethna、便利なんだけど、 ActionFormの定義と、AppObject の定義を書くのがすげー面倒。
フォームの内容がたくさんあったりするとシコシコと $form の配列を書かないといけないから。
みんなどうしてるんだろう。
0079nobodyさん2005/12/25(日) 01:27:44ID:???
>>78
面倒だけどシコシコ書いてる。
省略もできるんだろうけど、後から見直す場合は全部書いておく方が
見通しがいいと思うので。
0080nobodyさん2005/12/25(日) 11:15:24ID:???
>>78
AppObjectは、先にDBでテーブル作って自作のtoolでテーブル定義→オブジェクト定義を
コピーするスケルトン作成。

・・・・・って方法はどう?作ってリリースしてくれ。

ActionFormはどうしようもないね。画面設計に依るから。
0081nobodyさん2005/12/28(水) 21:20:52ID:???
Javascriptなどでフォームの数が動的に変化するページがある場合、
ActionFormクラスの$form定義をどう書いてますか?

inputタグのname値を配列としてsessionに記録していますが、
ActionFormクラスではsessionにアクセスできないし、ActionClassの
prepareメソッドで$formを追加してもvalidate()メソッドを呼ぶとエラーになります。

あきらめて$_POSTを直接参照してもいいのだけれど、解決法があるなら
Ethnaの流儀にそって書いておきたいです。
このようなページを処理した事がある方、ヒントをいただけないでしょうか。
0082nobodyさん2005/12/29(木) 01:38:55ID:???
Ethnaを使って、一般配布されているスクリプトってありませんか?
勉強のため参考にしたいのですが、中々見つかりません。
もちろん付属のSampleもいじっています。
0083nobodyさん2005/12/29(木) 01:56:13ID:???
>>82
MLにYahoo検索の話題がでてるね。
0084nobodyさん2005/12/30(金) 01:18:15ID:???
[ethna-users:0155]のhaltタソのコードは参考になるなぁ。
Ethna_Controllerクラスでマネージャを登録することで、ActionClassで
初期化作業をすっ飛ばして直接呼び出せるようになるんだね。

ところで、Ethna_Controllerクラスでは、
'Yjs' => 'Query'
としているのだけど、この'Query'にはどんな意味があるのだろう?
0085nobodyさん2005/12/30(金) 14:13:37ID:???
>>83
あ、出ていましたね。ありがとうございます。
早速DLして見てます。
0086nobodyさん2006/01/04(水) 01:59:43ID:ST4/dfIz
ロゴが変わったな。
0087nobodyさん2006/01/04(水) 02:20:39ID:???
ほんとだ、前の覚えてないけど、新しいのイマイチな気がする。
と言うより、デザインは良いけど、罫線ないほうがシックでかっこいい。
ミニサイズのバナーとおそろいに青系一色とか。
0088nobodyさん2006/01/04(水) 21:26:29ID:ST4/dfIz

ttp://www.seshop.com/event/dev/2006/timetable/Default.asp?mode=detail&eid=61&sid=282&tr=05%5F%8AJ%94%AD%83e%83N%83m%83%8D%83W%81%5B#282
0089nobodyさん2006/01/05(木) 10:58:02ID:???
おおざっぱだな。
0090nobodyさん2006/01/06(金) 15:01:06ID:???
EthnaでSmartyの'hierselect'を利用するにはどうしたらいいのでしょう?
ヒントいただけませんか?
0091nobodyさん2006/01/06(金) 17:06:34ID:EEplBUgD
>>90
smartyにも hierselect ってあるんだ。プラグイン?
0092902006/01/06(金) 17:19:54ID:???
>>91
デフォルトで組み込まれてますよ。

Smartyオブジェクトにアクセスできればいいんじゃないかと思うけど
その方法がわからん・・・
0093nobodyさん2006/01/06(金) 21:04:38ID:???
>>92
ActionClassからなら
$smarty =& $this->backend->ctl->getTemplateEngine();
で使用中のSmarty取れる。

何したいかよくわからんけど、とりあえずそんな感じ.
0094902006/01/06(金) 22:15:02ID:???
>>93
ありがとうございます。
助かりました。
0095nobodyさん2006/01/06(金) 23:37:29ID:???
いやSmartyにhierselectはないでしょ
0096902006/01/06(金) 23:49:52ID:???
>>95
・・・・・・・。

すんません。HTML_QuickFormでした。
休みボケでした。お恥ずかしい・・・orz
0097902006/01/07(土) 00:04:03ID:???
あ、でも renderer に Smarty を使っていて、renderer のインスタンスを
作るときに Smarty のインスタンスを渡す必要があるので、>>93 さんの
情報は役に立ちます。ありがとうございました。
また、スレ汚しすみませんでした>皆様
0098nobodyさん2006/01/07(土) 00:22:07ID:vbU0E729
僕は ethnaでは quick_form の必要性を感じないけどなぁ。
ActionForm でも $form を定義して、 quick_form でも form のエレメントを作成して、
って2度手間な気がします。
validateも ethnaのvalidateでいいし。

javascriptを自動生成してくれるのは便利だけど。
0099nobodyさん2006/01/07(土) 01:35:07ID:???
hierselectを使いたいんでしょ
0100nobodyさん2006/01/12(木) 01:26:04ID:F7HO2NXc
Ethnaいいんだけど、ファイルの階層構造が深くなるのがちょっとやだな。
0101nobodyさん2006/01/12(木) 08:09:50ID:???
階層は深くなるけど見通しは良くなった。
Ethna使う前の設計が拙かっただけだけど。

階層が深くて困ることってなに?
0102nobodyさん2006/01/12(木) 10:35:54ID:F7HO2NXc
>>101
目的のファイルにたどりつくのが大変。
templateとviewとactionが結構離れてるでしょ。
emacsで行ったり来たりするのが大変なんです。
0103nobodyさん2006/01/12(木) 10:59:29ID:???
>>102
納得。

俺もそれでエディタでの開発をあきらめて、今はPHPEclipseを使ってる。
エディタの手軽さも捨てがたいんだけど全体の見通しが良いほうが
後でメンテナンスするときに楽だからね。
0104nobodyさん2006/01/12(木) 11:56:16ID:???
でも開発者以外の人もソースみたりテンプレートいじったりするならわかりやすくフォルダ分け⇒階層深くなるも利点だったりする。
どこいじったらいいかわかりやすい…
0105nobodyさん2006/01/12(木) 13:12:36ID:???
>>102
あらかじめ一括でぶちこむフォルダ(unify)を用意して
作成したプロジェクトのコントローラーの$directoryを

'action' => 'unify',
'view' => 'unify',
'template' => 'unify'

とか全部同じディレクトリにすればいい。
コントローラーで設定すればアクションの自動生成も対応できる。

フォルダ階層は好みの分かれるところだから
かなり自由にいじれるようになってる。
「これだ俺のデフォルトスタイルだ」とおもったら
Ethna本体のskelをいじれば以後プロジェクトを作った場合も
勝手に自分の好きなフォルダ階層になる。
0106nobodyさん2006/01/14(土) 05:22:07ID:YyEEFPbb
http://media.rubyonrails.org/video/rails_take2_with_sound.mov
で使ってるエディタよさそうなんだけど、何だかわかりますか?
0107nobodyさん2006/01/14(土) 13:41:28ID:???
>>106
日本語の読み書きが一切不可能なことで有名なTextMateというエディタです。
http://macromates.com/
0108nobodyさん2006/01/14(土) 14:55:41ID:YyEEFPbb
>>107
ありがトン でも日本語入力できないんじゃつかえねー。 無料じゃなさそうだし、
そもそもmacもってない。

ttp://yatsu.info/archives/001456.html
なんてやつもいるな。
0109nobodyさん2006/01/21(土) 12:43:44ID:bRqE5FUc
Windows上にApache+MySQL+PHP+Ethnaの環境を作りたいのですが、
PEAR::DBの設定で行き詰ってます。
Managerクラス(fooと登録)で、
public function connect() {
$db = $this->backend->getDB();
if (Ethna::isError($db)) throw new Exception('DB error', 1);
$this->db = $db;
}
としてEthna_ActionClassのperformメソッドで、
try {
$this->foo->connect();
$this->foo->xxx();// queryを発行するメソッド
} catch (Exception $e) {
$this->ae->addObject(null, $e);
return 'yyy';
}
とすると、コネクトではエラーは返らず、queryを発行するメソッドの
方で Fatal error: Call to a member function query() on a non-object in
エラーが発生しました。getDB()した直後で$dbをis_objectするとfalseが
返ってくるので、getDBに失敗してるみたいなんですが、どこを
見直すべきでしょうか?
Ethnaはpear innstallコマンドでインストールしてます。
チュートリアルにある空のindex pageの作成・表示までは上手くいっております。
01101092006/01/21(土) 19:10:43ID:???
109です。
大変失礼しました。
dsnの記述を間違っていただけでした。
0111nobodyさん2006/01/21(土) 21:52:09ID:???
$r =& $rs->fetchRow(DB_FETCHMODE_OBJECT); //これは普通に使えてます

するのが面倒なので、アプリケーションオブジェクトにて、

class Sample_Foo
{
var $db;
function Sample_Foo(&$backend) {
if (! ($this->db =& $backend->getDB()) ) {
//
}
$this->db->setFetchMode(DB_FETCHMODE_OBJECT); //これができない
}
}

のようにコンストラクタに指定しようとしたところ、

Fatal error: Call to undefined function: setfetchmode() ...

となりました。$backend はアクションクラスにて、

function perform()
{
$foo =& new Sample_Foo($this->backend);
//
}

fetchRow() のデフォルトの振舞いはどこで設定するのがよいですか?



0112nobodyさん2006/01/21(土) 22:00:02ID:???
$this->db->db->setFetchMode()
かな。
Ethnaが実装してない部分はこうして
直接指定してます。
0113nobodyさん2006/01/21(土) 22:39:09ID:???
112>> 動作しました。
勉強不足で、なぜそれで OK なのかわかりません...orz
これからgetDB()のコード探して読んでみます。
ありがとう!!

0114nobodyさん2006/01/21(土) 23:45:28ID:???
>>58 なんかも見てみましょう。
実は自分もこのスレで教えてもらいますた。
0115nobodyさん2006/01/22(日) 01:47:34ID:MuWpGim1
action を作ったときに templage も生成してくれると楽なんだけどなー
0116nobodyさん2006/01/26(木) 23:26:36ID:P4JZCK77
思いっきり我流のphpフレームワークで恐縮ですが公開して見ました。

もしよろしかったらご覧いただければ幸いです。

http://pharon.lolipop.jp/
0117nobodyさん2006/01/27(金) 09:15:55ID:???
完全にスレ違いだが。
>>116
これはちょっと・・・・Ethnaとの越えられない壁を感じる。
まず、ローマ字綴りのファイル名とかいきなりorz。
setter/getterはせめてisset確認して欲しいとか。
ShiftJIS使うなとか。

もしかして、JJ?
0118nobodyさん2006/01/27(金) 09:43:54ID:???
>>117
ローマ字はキモイな。
でも形にして公開するあたりは評価に値する。
内容は見てないけど。
0119nobodyさん2006/01/27(金) 11:37:31ID:???
>>116
ttp://pharon.lolipop.jp/table_mente/menu.php
これformの内容がまったくエスケープされてないんだが。
修正の所でaaaで検索してみそ。
0120nobodyさん2006/01/27(金) 20:59:08ID:IoK0izfX
Ethnaのスクリプトを一ファイルにまとめる機能って
Actionも含めて一ファイルにするんですか?
システム関連のファイルのみ?
0121nobodyさん2006/01/29(日) 12:00:04ID:???
>>120
やった事ないからわからないんですが、たいしてパフォーマンスは改善されなかった
って書いてあったような気がします。
予想だけど、actionは無理じゃないかな。
Ethnaのソースコードはそんなにファイル数ないからあまり効果ないのでは。
0122nobodyさん2006/01/30(月) 08:44:39ID:???
Ethna-0.2.0正式リリース
0123nobodyさん2006/01/31(火) 01:04:57ID:???
Ethna-0.2.0 リリースキター

藤本神のblogでも、時間がとれるようになったからどんどんフィードバック
していきたいみたいな事が書いてあって、期待大。
0124nobodyさん2006/01/31(火) 02:13:43ID:???
ロゴの投票やってるのでどうぞ。
ttp://ethna.jp/ethna-logo.html

4が一番人気だけど、なんかのロゴに似てるな。
なんだろう。
0125nobodyさん2006/01/31(火) 04:34:55ID:???
確かにどこかで見たような気がする・・なんだっけ。

シンプルに4番って気もするけど、個人的には遊びゴコロを感じる1番を押したい
0126nobodyさん2006/01/31(火) 07:20:37ID:???
EthnaってMojaviでいうModuleないの?
Actionだけだとファイルがごちゃごちゃになりそうな気がするんだけど
0127nobodyさん2006/01/31(火) 10:30:34ID:???
>>128
ないと思う。
action_foo_bar_baz と 自分で階層を作るのかな?
工夫すればそれっぽい事はできそうだけど。
0128nobodyさん2006/01/31(火) 10:52:09ID:???
やっぱり?
個人的には
人間が容易に把握できると言われる
オブジェクトのプロパティー数=7+-2個程度が
一つのディレクトリにいれておくActionファイル数としても
ちょどいいと思う。
0129nobodyさん2006/02/02(木) 13:49:37ID:???
Windows 2K+PHP 5.2.1なんですが・・・

C:\>pear install Ethna-0.2.0.tar.gz
parsePackageName(): "0.2.0.tar.gz" is neither a valid version nor a valid state
in "Ethna-0.2.0.tar.gz"
invalid package name/package file "Ethna-0.2.0.tar.gz"
Cannot initialize 'Ethna-0.2.0.tar.gz', invalid or missing package file
Package "Ethna-0.2.0.tar.gz" is not valid
install failed

となりました。
一応ご報告まで。
0130nobodyさん2006/02/02(木) 15:27:31ID:???
Ethna-0.2.0正式版がでてからWindows上できちんと動作してます?
Ethnaのディレクトリをinclude_path(*)に加えても、

Warning: main(Ethna/Ethna.php): failed to open stream: No such file or directory in
D:\foo\bar\app\Bar_Controller.php on line 20
とかいわれるし・・・。PHP 5.2.1とPHP4.4.2の両方で試したけど。

(*)php -i > info.txt
include_path .;D:\PHP\PEAR;D:\PHP\Ethna .;D:\PHP\PEAR;D:\PHP\Ethna
0131nobodyさん2006/02/02(木) 15:58:51ID:???
>>130
Ethna ディレクトリの親ディレクトリを include_path に加えなはれ。
ていうか PEAR のディレクトリが include_path に入ってるなら
pear install Ethna-0.2.0.tgz だけで済むのに。
01321302006/02/02(木) 16:17:36ID:???
>>131
動きました。
助かりました。ありがとう。

すみません>>129も私でした。
他のパッケージはインストールできるのですが、Ethnaは
1) pear install Ethna-0.2.0.tar.gz
2) pear install Ethna-0.2.0.tgz
どちらもだめですね。うむむ。

1) [ethna-users:0191] より。

ちなみに2)の場合はこんなメッセージでした。
D:\>pear install Ethna-0.2.0.tgz
No releases available for package "pear.php.net/Ethna"
Cannot initialize 'Ethna-0.2.0.tgz', invalid or missing package file
Package "Ethna-0.2.0.tgz" is not valid
install failed
0133nobodyさん2006/02/03(金) 01:35:22ID:???
>>132
ダウンロードしたEthnaが置いてあるディレクトリに移動するとか、
Ethnaのある場所を指定してやれば良いんじゃないの?
01341302006/02/03(金) 08:50:06ID:???
>>133
そういう意味だったの・・・。
てっきりダウンロードから自動でやってくれるのかと・・・。
失礼しました。
0135nobodyさん2006/02/03(金) 18:12:16ID:???
今更だけど・・・

pear install http://****/Ethna-0.2.0.tar.gz

でも動くよね?
01361302006/02/04(土) 14:25:12ID:???
>>135
pear install http://prdownloads.sourceforge.jp/ethna/18710/Ethna-0.2.0.tar.gz

でインストールできることを他のマシンで確認しました。
0137nobodyさん2006/02/12(日) 00:59:00ID:???
AppObjectは面倒くさくて使う気になれないんですが、使うとどういう点で幸せになれますか?
いまいちピンときません。

0138nobodyさん2006/02/12(日) 16:10:39ID:HHAh2SKQ
>>137
テーブルを永続オブジェクトとして扱える。
↓
SQLを使わずに永続オブジェクトを通してテーブルにアクセスできる。
↓
DB非依存のコードになる。
↓
ちょっと幸せ
0139nobodyさん2006/02/12(日) 21:05:40ID:???
>>138
AppObject自体が mysql にべっとりだけど?
0140nobodyさん2006/02/12(日) 22:52:49ID:???
>>139
まぁ、AppObjectを使うのはその考え方(O/Rマパ)を採用してるみたいなところあるから。

自分の使うRDBMSに合うように書き換えれば済む話だからあまりMySQLべっとりは本質的ではないと思う。
0141nobodyさん2006/02/13(月) 07:20:58ID:???
>138
一晩、AppObject使ってみておっしゃることが少し理解できました。
というかオブジェクト指向がなんで必要なのか、Ethnaのおかげでうっすらわかってきました。


あと、これ便利でした。

[AppObjectを生成するコマンドラインツール]
http://ethna.jp/pipermail/users/2006-January/000165.html



0142nobodyさん2006/02/15(水) 23:25:12ID:ysMvv2cd
サンプルみたいなものは無いの?
実際にEthna使ってるアプリのソース見てみたいんだけど。
0143nobodyさん2006/02/16(木) 02:24:28ID:???
僕も色々見てみたいんだが、Ethna使ってるのってあんまりサンプル出回ってないよな。
公式にあるのと、MLに1,2個上がってるからそれ見るぐらいしか。
0144nobodyさん2006/02/16(木) 14:55:18ID:???
Ethnaよさげなんだけど
・moduleがない
・compositeViewがない
これが問題
0145nobodyさん2006/02/16(木) 21:04:10ID:???
>>144
moduleとcompositeViewってなに?
何かいいことあるの?

Ethnaしか知らんので、教えてくれればうれしい。
0146nobodyさん2006/02/16(木) 21:55:18ID:???
moduleはAction-View-Templateのコンテナ。
クラスが増えすぎた時にごちゃごちゃにならない。
compositeViewはCompositeパターンを適用したView。
複数のAction-Viewを組み合わせて
一枚の画を作る時にとっても便利 from Mojavi3
0147nobodyさん2006/02/17(金) 11:34:05ID:???
ActionFormにて

あるフォームに値が入ると周辺のフォームもrequiredになるフォームグループ。
それぞれのフォーム定義に 'group' => 'hoge', ってしとくと
_validateする前にざざっとissetで値が入ってるか調べてrequiredしたりしなかったり。

type=radio,checkbox,select等に「その他」の項目を作ってそれを選んだ時だけ
すぐ下のtype=textに書かせるような疑似コンボボックス。
'combo' => array( '8' => 'other' ), ってしとくと value="8" をPOSTすっと
<input type="text" name="other">がrequiredされるという。微妙。

需要ある?
0148nobodyさん2006/02/17(金) 13:25:02ID:???
あります!
是非アップお願いしまっす。

コードを気軽に投稿できる場所があるといいですねぇ。


0149nobodyさん2006/02/17(金) 15:38:48ID:pZsluFn9
>>144
そうかモジュール構造にしたいか、、

http://diary.eth.jp/?date=20060201にある
Ethna Viewコンポーネント(from GREE by 小泉さん)
というのがcompositeViewになる。のでもうちょっとまってて。
0150nobodyさん2006/02/17(金) 16:50:25ID:???
>>149
関係者 or 藤本神ご本人?
期待してます。wktk
0151nobodyさん2006/02/17(金) 20:01:19ID:???
>149 は モジュール構造というか、どっちかというと
>144が言うところの compositeView の事だと思っていたのですが。。。
0152nobodyさん2006/02/17(金) 21:29:24ID:???
>>150
そういういらん確認はしないほうがいいんじゃね?
関係ない人が参加しようとしてるときにテンション下がりそうだし。
期待してるだけでいいじゃん
0153nobodyさん2006/02/18(土) 00:17:12ID:???
>>151
モジュールは保留だけどCompositeViewは作り中ってことでは?
>>152
いや俺自身何の面識もない部外者なんだけど…
なんでテンションが下がるの?
0154nobodyさん2006/02/18(土) 18:55:13ID:???
セイセイセイ
0155nobodyさん2006/02/23(木) 21:50:51ID:???
Ethnaに関係なんだけどさ。
[ethna-users:0215] W+D Vol31に載ってたDNS検索の実装
31号なんて見当たらんのだが。どこに売ってるんだ?
0156nobodyさん2006/02/23(木) 22:58:50ID:InB2CvHj
このスレみると join できないって書いてあるけど、
http://ethna.jp/ethna-changes.html を見ると、
Ethna_AppObjectのJOIN検索がSQLエラーになる(ことがある)問題を修正
とか書いてあるね。
0157nobodyさん2006/02/24(金) 03:16:50ID:???
>>155
過去にWEB+DB MAGAZINEに執筆したことのある人のところには
今週のはじめくらいに届いてる。
うちにもあるよ。
0158nobodyさん2006/02/24(金) 08:18:52ID:???
>>157
なるほど。
じゃあもうすぐ発売されるのね。
楽しみに待っとく。ノシ
0159nobodyさん2006/02/26(日) 02:52:08ID:???
>>156
でも@todoには「複数テーブルのJOIN対応」と書いてあるし
JOINしたクエリを返す_SQLPlugin_SearchTableは未実装。

更新履歴のはJOINでなくてANDという意味だったりして。

>>157
定期購読も早く届く。
0160nobodyさん2006/02/26(日) 12:22:12ID:???
>>159
たしかに未実装と言えば未実装なんだけど、_SQLPlugin_SearchTableは
継承先クラスでベタなSQLを書いてやれば動作するっていう意味では
実装済みとも言える。

AppObjectにJOINする側のプロパティとJOINする側のテーブルとJOIN条件を
記述するプロパティとその記述方法があれば、具体的に_SQLPlugin_SearchTable
も実装できるね。ただ、ORMではその記述方法は一般的にやや複雑になりがち。

MapleのActiveRecordもJOIN条件を記述するルールは「へー」って感じだった。
0161nobodyさん2006/02/26(日) 22:51:40ID:???
http://ethna.jp/index.php?ethna-tutorial-form-complexvalidate
これ見てるんだけど
prepareの中で $this->form なんて無くね?
0162nobodyさん2006/02/26(日) 22:54:36ID:???
>>161
ソースも確認しないでエスパー回答するけど、
$this->af->form じゃね?
0163nobodyさん2006/02/27(月) 00:00:12ID:???
>>161-162
既出
http://ethna.jp/ethna-request.html
0164nobodyさん2006/02/27(月) 00:37:43ID:???
>>163
わかってるなら wikiなんだから直してよ〜
0165nobodyさん2006/02/27(月) 00:40:08ID:???
てか、直しました。
0166nobodyさん2006/03/01(水) 19:12:57ID:???
2月の肉の日リリースはないのは28日までだから?
0167nobodyさん2006/03/01(水) 20:29:34ID:???
バージョンおかしくない?
0168nobodyさん2006/03/06(月) 23:22:03ID:???
Sessionってどうやって使ったらいいのでしょう?
ActionFormはSessionでも保ってくれていいんじゃないかと思うんだけどなー。
0169nobodyさん2006/03/10(金) 00:41:44ID:???
>168
確かに。
hiddenつくるのめんどうだし
0170nobodyさん2006/03/11(土) 16:47:54ID:???
>>168
使い方って、
$this->session->set('hoge', $hage);
$hage = $this->session->get('hoge');
こういうことじゃなくて?

formの値は$formに保持してるでしょ?
そういうことじゃなくて?
0171nobodyさん2006/03/13(月) 00:08:04ID:???
配列strに$this->af->set()する方法がわからないです。
読むのはできるんだけどなー。
0172nobodyさん2006/03/13(月) 00:22:34ID:???
方法があると思い込んでたけど、ないみたい。

Ethna_ActionForm.php
に
function setArray($name,$name2, $value)
{
$this->form_vars[$name][$name2] = $value;
}
を追加してみた。

何か問題でるかなぁ。
0173nobodyさん2006/03/14(火) 01:54:35ID:???
$this->af->set('hage', array('hoge' => 'fuga'));
って無理?コード読んで無いけど。
0174nobodyさん2006/03/14(火) 12:25:45ID:???
>173
出来ました。
ありがとうございます。


でも、
hage[’hoge’]
hage[’moge’]
hage[’poge’]
とかあった場合、

hage[’moge’]だけをセットしたいとかってできますかね?
上のだと全部置き換わっちゃうので。
■ このスレッドは過去ログ倉庫に格納されています