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

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

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん2005/08/03(水) 21:00:39ID:TuHx69hT
国産フレームワーク、Ethnaでいい意味で手抜きなプログラミングライフを。

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

SourceForge.jp: Project Info - Ethna
http://sourceforge.jp/projects/ethna/
0856nobodyさん2007/03/20(火) 17:22:43ID:???
ethna使いたてです。
appManagerから別のappManager呼び出したい時って
どうやってするんでしょうか?

0857nobodyさん2007/03/20(火) 17:42:03ID:???
>>856
普通に
$this->backend->getManager('hogehoge');
とかでできるんじゃないか?
08588562007/03/21(水) 23:53:28ID:???
>>857
あ、単純にtypoしてただけでした・・
1回やってみただけでこれじゃだめなんだと決め付けてました。
$this->backend->getManager('hogehoge');
で行けました。ありがとうございました。
0859nobodyさん2007/03/22(木) 17:24:28ID:???
ありがちな情報管理ページで、
?action_edit=true&id=1
と指定された際にDBからid=1のレコードを取得($row)して
$this->af->setApp('name', $row[name]);
したものを
name:<input type="text" value="{$app.name}">
とフォームに表示して修正、と言った感じの場合に、

validate()に引っかかって再修正とか、「修正しました」とメッセージを表示してまた同じようにフォームを表示と言った処理をしたい
場合は毎回
$this->af->setApp('name',$this->af->get('name');
と書いて回るのが普通なんでしょうか?

それとも、最初に表示する際に
$this->af->form_vars['name'] = $row[name];
と直接代入してしまって($af->setForm()って無いですよね?)
name:<input type="text" value="{$form.name}">
と処理してしまって良いものなのでしょうか?
0860nobodyさん2007/03/22(木) 18:48:43ID:???
あ、af->setForm()ってのを探して無かったから勘違いしてたけどaf->set()で良いのか・・・
0861nobodyさん2007/03/30(金) 18:17:00ID:???
良くある情報入力→DB登録のようなページで
入力画面表示を
action_add
としたら、そこからPOSTしてDB登録する動作を
action_add_do
にした場合、ActionFormの中身って両方(Add.php,Add/Do.php)に同じものを書くしか無いんでしょうか?(Do.phpのprepare()でvalidate()する)

add.tpl内で{input_name="form_a"}とか使わないで全部<input type=text name=form_a value={$form.form_a}>
とか書いていけばDo.phpだけにActionForm書くだけでも問題は無いですけど・・・
0862nobodyさん2007/03/30(金) 18:24:04ID:???
>>861
同じ物を書くか、俺の場合はフォーム定義を外部化出来るようにしたよ。
0863nobodyさん2007/03/30(金) 19:09:22ID:???
>>861
add-view action_add
して、その中で
var $helper_action_form = array('action_add_do' => null);
する。
08648632007/03/30(金) 19:14:21ID:???
追加。(途中で送信しちまった)

{form ethna_action="action_add_do"}
{form_input name="form_a"}
{/form}

とか書けば、Viewの省略も可能。
08658612007/03/30(金) 20:17:37ID:???
>>862
取り合えずEthna始めたばかりなのでなるべくコアは弄らないで試してみようかなと。
私はあまりに面倒だったので簡単な書式のテキストからActionForm形式のarrayを吐き出すスクリプトは作ったんで毎回指定しても良いんですけどねぇ。
なんか二度手間は気持ち悪いというか。

>>863
なるほど、使用するActionFormを指定することが出来るんですね。
有難う御座います。

ところでSELECT,CHECKBOXなんかで
$form=array(
'managers'' => array(
 'type'    =>  VAR_TYPE_INT,
 'form_type'    =>  FORM_TYPE_SELECT,
 'name'    =>  '担当者',
 'option'    =>  array(),
 ),
);
なんてのを定義して、リストは
function prepare() {
...
$res = $db->getAll("SELECT id,name FROM managers");
$options = array('0'=>'--');
foreach($res as $r){
 $options += array($r['id']=>$r['name']);
)
$this->af->form['managers']['options'] = $options;
return null;
}
の様に動的にDBから取って来る、ってのも良くあるパターンだと思うんですがこう言う処理はAppManagerにして使いまわすのが流儀ですかね?

なんか、物凄いありがちでフレームワークによきに計らって貰いたいselected,checked処理関連がマニュアルから良さ気なのが見つけられ無かった・・・
08668632007/03/30(金) 21:22:18ID:???
>>865
optionの指定は、配列指定する他に2種類あって、
array(
==snip==
'option' => 'managers'
)

こう指定してやると、ActionFormにmanagersメソッドがある場合は、その返り値がoptionに入る。$af->managers = array()みたいに、直接配列が入っていてもOK

そして、'option' => 'man, managers'としてやれば、AppID_ManManagerのgetAttrListが呼ばれる。
$man->getAttrList('manager');のように呼ばれるから、
manのgetAttrListをオーバーライドしてやる。
デフォルトだと、manの変数 $managers_list を参照しようとするから、DBかませたいときは、getAttrListのオーバーライドが一番手っ取り早いかな

ブラウザのフォームで書いてるからtypoあるかもしれない、適宜脳内変換して読んでください。。

ちなみに、ActionFormの定義は、BoBppさんのビルダが便利。
http://as-roma.com/ethna/formBuilder/
0867nobodyさん2007/03/31(土) 03:05:42ID:???
マネージャでコンストラクタに変数渡したい場合、
呼び出すとき、どう記述すればいいでのしょうか?

例:
class Hoge_AbcManager extends Ethna_AppManager
{
function Hoge_AbcManager( $watasitai_var )
{



通常の方法ではコンストラクタに渡す変数を指定できませんよね?
$HOGE_m =& $this->backend->getManager('Hoge');
0868nobodyさん2007/03/31(土) 09:04:45ID:???
使い方を間違ってる。
0869nobodyさん2007/03/31(土) 10:03:27ID:???
>>867
コンストラクタに渡したいって変数なら、アクションやビューに
依存しない変数だよね。managerを呼ぶ時に常に行う処理ってことだから。

で、そういうのはbackendに詰めるでしょ。
すると、そもそもmanagerはbackendを持ってるから
$this->backend->ってやればコンストラクタで変数取れるじゃん。ってことだと思う。

やるなら、backend::getManagerをオーバーライドして、ってなるんだろうけど
ただのバッドノウハウになるね。
0870nobodyさん2007/03/31(土) 12:22:34ID:???
>>861
class Sample_Form_AddDo extends Sample_Form_Add

俺はこうしてる。
0871nobodyさん2007/04/04(水) 18:42:23ID:???
>>870
それって勝手にそれぞれのDo.php等の中で
例えばAdd/Do.php内で
require_once 'Add.php';
して?

うーむ、更にModify,Modify_Doとかでも使いまわすことを考えるとそれも現実的かなぁ・・・
0872nobodyさん2007/04/04(水) 21:23:16ID:???
>>871
870じゃないが、このやり方は確か藤本氏がサンプルでやってた方法だったかと。
ひとつ上のクラスだったら
require dirname(__FILE__).'.php' でおk
別のクラス呼ぶなら、直接ファイル名記述。
0873nobodyさん2007/04/16(月) 15:15:35ID:KZll3+ph
初心者ですが、すいません

WindowsXP + IIS にEthnaをインストールしようと
「アプリケーション構築手順(1) 」に従って
インストール、スケルトン作成まで終わったのですが、
index.phpを指定してもブラウザに表示されません

何が悪いのでしょうか?

アドレスは
http://localhost/sample/www/index.php
と指定しています

0874nobodyさん2007/04/16(月) 23:03:05ID:ty8BPgJH
tmpのパーミッションとかは?
0875nobodyさん2007/04/17(火) 02:22:21ID:???
>>873
> 何が悪いのでしょうか?

>初心者ですが
>WindowsXP
>IIS
>http://localhost/sample/www/index.php
この4つかな。
0876nobodyさん2007/04/17(火) 12:32:32ID:???
>>873
そのページに従ってやったならそのアドレスはおかしいんじゃないの?
0877nobodyさん2007/04/24(火) 01:57:17ID:XNYrKVIb
通常のPHPからEthnaへsession変数渡せないでしょうか?
昔作ったプログラムからEthnaへ遷移したいんだけど、session変数が渡せなくて、挫折気味・・・
0878nobodyさん2007/04/24(火) 02:45:37ID:???
>>877
んー、「昔作ったプログラム」のセッションIDの付け方がまちまちだとダメだね。

でないなら、Ethna_Sessionを自前のクラスでOverrideさせて、
SessionIDを決めるロジックだけそのIDで上書きすればOK。

あとは、ActionClassでセッションをスタートさせれば普通に取れるはず。
0879nobodyさん2007/04/24(火) 11:13:37ID:???
>>878
ありがとうございます!
「昔作ったプログラム」では、session_start()だけでID決めてるんで、IDはまちまち・・・だと思います。(この辺よく理解していないですが)

Ethna_Sessionのロジックがよくわからない初心者なので、とりあえず
 �@クッキー($_COOKIE["PHPSESSID"])からセッションID取得して、
 �Asession_id()でセッションID設定して、
 �B「昔作ったプログラム」で保存されたディレクトリのセッションファイルと照合
って流れにムリクリしてるんですが、
�@でクッキーが取得できず・・・なぜだろう・・・、
0880nobodyさん2007/04/24(火) 19:10:42ID:/+uAa599
Hoge_Controller.phpのテンプレートから$managerが
いつの間にか消えてたんだけど、$managerってobsoleteな仕様なの?
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/ethna/ethna/skel/app.controller.php?r1=1.21&r2=1.22
08818782007/04/25(水) 02:11:01ID:???
>>879
SessionIDの言い方がマズかった。というか、間違った。すまん。

PHPSESSIDならそれをEthna_SessionのセッションIDのキーにしてやる。ということ。
デフォルトではEthnaはHoge_Controllerとか使ってる場合=HogeがアプリケーションIDの
場合、HogeSESSIDをセッションIDのキーに使う。PHPのデフォはPHPSESSIDだね。


で、この「HogeSESSIDをセッションIDのキーに使う」っていうロジックをOverrideさせろ
っていうこと。
ControllerでセッションのクラスをEthna_SessionからHoge_Sessionに書き換えて、
class Hoge_Session extends Ethna_Session{
function Hoge_Session($appid, $save_dir, $logger)
{
$this->session_name = "PHPSESSID";
//あとはEthna_Sessionのコンストラクタと同じのをコピペ
// もちろん、一行目は抜かせよ。w
}
}
08828782007/04/25(水) 02:12:08ID:???
>>880
2.3.0から$managerは使えません。
0883nobodyさん2007/04/28(土) 22:48:15ID:???
EthnaでSmartyのキャッシュ機能を無効にしたいんですがやり方がわからんとです。

$this->backend->ctl->getRenderer()->getEngine()->clear_all_cache();
とかをアクション、ビュー、コントローラ辺りに書いてみたんですが無効にならんとです。

Smarty単体なら
http://sky.freespace.jp/smarty/SmartyManual_2-6-7J_html/api.clear.all.cache.html
で出来るとですがEthnaが絡むと出来んとです。

どうかEthnaでのやり方を教えて欲しいとです。

0884nobodyさん2007/04/29(日) 12:40:34ID:???
俺も知りたい
0885nobodyさん2007/04/29(日) 12:46:44ID:???
>>881
セッションキーを指定せずに、session_start()してるならそのままEthna内でも使えるはず
恐らくEthnaが内部でセッションの保存先が元アプリのと違うんじゃない?
0886nobodyさん2007/04/29(日) 21:13:05ID:???
>>883
Ethnaのデフォルトはキャッシュ無効になってないか?
0887nobodyさん2007/04/30(月) 18:59:50ID:???
デフォは有効じゃないかな?
0888nobodyさん2007/04/30(月) 20:08:50ID:???
templates_cとcacheを勘違いしてない?
0889nobodyさん2007/05/06(日) 20:44:18ID:???
adodbを使っている場合ってAppObjectとかって使えないのでしょうlか?
0890nobodyさん2007/05/08(火) 03:03:53ID:???
AppObjectで対応してないDB使いたいからadodb使うとか、
AppObject使いたくないからadodb使うんじゃないの?
0891nobodyさん2007/05/10(木) 00:32:00ID:???
>>889
前に誰か挑戦してたなーと、ブックマークを漁ってたら出てきました。
http://riaf.org/Test_DB.phps
作者のriafさんも、途中であきらめたとか言っていたような気がするので、もしかしたら使えないかもしれません。
0892nobodyさん2007/05/13(日) 13:34:58ID:???
http://d.hatena.ne.jp/riaf/20070513/1178996357

helper_app_objectとか知らなかったんだが…
0893nobodyさん2007/05/17(木) 21:08:16ID:???
>>891
ごめんなさいごめんなさい。
それたぶんあまりうまく動かないです。。

>>892
BoBppさんのブログとかがそのあたり詳しいと思います。
(僕も普段は使って無いので。。。)
0894nobodyさん2007/05/18(金) 01:35:51ID:???
こういうの使う人ってマゾなんだろうか・・
0895nobodyさん2007/05/19(土) 13:56:15ID:???
>>894
kwsk
0896nobodyさん2007/05/21(月) 14:42:24ID:???
>>862
フォーム外部化ってどんな風にやってるんでしょうか。
kwsk plz
0897nobodyさん2007/05/22(火) 00:55:13ID:???
>>896
多分>>862って俺だったよなぁと思いつつポイントだけ
Ethna_ActionFormのコンストラクタが実行される前にフォーム定義をセットするように
Ethna_ActionFormを継承したクラスに書けばおkです
後は好きな形式からロードしてActionFormの定義配列を吐き出せるクラスなりを用意しておけば

俺の場合元々古いバージョンのEthna時代に作った物で、フォーム表示のsmarty関数とかも
作ってて、フォームの見栄えなんかも一緒に定義出来るようにしたりしてます。
0898nobodyさん2007/06/01(金) 22:56:49ID:???
ActionForm内のoption指定で
>>866
を参考にしてActionForm内にmethodを書いてリストを取得していたんですが、同じような処理が多くなってきたのでAppManagerを呼び出して取って来る方式にしました。

ところが、ActionForm内のmethodとして記述していた場合は最後に
return array(0=>'a',1=>'b',...);
と言う配列を帰していれば良かったんですが、AppManagerで同様にやろうと思いgetAttrList()にmethodの中身をコピペして使用すると上手く動きません。
で、ViewClassのコードを追っていったら404行から
// マネージャから取得
 $mgr =& $this->backend->getManager($split[0]);
 $attr_list = $mgr->getAttrList($split[1]);
 if (is_array($attr_list)) {
  foreach ($attr_list as $key => $val) {
   $options[$key] = $val['name'];
  }
  }
となっていたので、AppManagerから帰す時はgetAttrListで
return array(0=>array('name'=>'a'),1=>array('name'=>'b'),...);
と帰すと上手く行きました。

この形式じゃないと駄目なのってなにか歴史的経緯でもあるんでしょうか?
$options[$key] = $val;
だったら面倒がなくて良いんですが・・・
08998782007/06/02(土) 00:00:57ID:???
>>898
んー、あまり読んでなくてレスするけど。

ActionForm内のメソッドからAppManager呼ぼうとしてる?
それはできないヨ。Ethnaって、ActionForm→Backend→AppManagerって順にnewしてるから

だから、自分は、ActionFormのプロパティをセットするのは、prepare()内って決めてる。
で、POSTされてってChain時は、parent::prepare()でオートセット(もどき・・・自分に言い聞かす)。

違ったらソマソ
0900nobodyさん2007/06/06(水) 15:40:46ID:6likgS+I
Managerからは [Project]-ini.phpの値を普通には読み出せないようなんですが、
解決法どなたかきぼんぬ
09019002007/06/06(水) 15:54:31ID:???
$this->config->get('hoge')も
$this->backend->getConfig->get('hoge')も
両方だめぽです。
Call to a member function on a non-object
エラーがでます。
0902nobodyさん2007/06/06(水) 16:05:23ID:???
>>901
試してないけどEthna_AppManager見た感じではそれでいけそうなもんだけどなぁ
どっかで凡ミスしてない?
09039002007/06/06(水) 16:30:44ID:???
ミスはしていないっぽいです。

また、$this->session->get('hoge');
などもマネージャ内では機能しないようです
0904nobodyさん2007/06/06(水) 17:52:49ID:???
>>903
ちょっと嫌かもしれないけど
俺ならそういうケースはとりあえずEthna_AppManagerのコンストラクタに直接var_dumpとかで
値取れてるのか確認するかなw

これまたEthna_AppManager見ただけで未確認で申し訳ないけど
普通ならちゃんと取れてるはずだから
Ethnaの古いバージョンだから違うとかEthna_AppManagerを継承したマネージャ作ってて
Ethna_AppManagerのコンストラクタ実行されてないとかそれくらいしか思いつかない(;´Д`)
09059002007/06/06(水) 18:40:02ID:???
確認の前に500エラーでごわす
0906nobodyさん2007/06/06(水) 21:41:01ID:???
普通に読めますよ。
$this->backend->getConfig->get('hoge')はエラーで当たり前。

絶対凡ミス。
0907nobodyさん2007/06/06(水) 22:31:09ID:???
つーか、
var_dump(get_class($this->backend));
とかしてみないの?

09088782007/06/07(木) 00:18:01ID:???
>>901
>$this->backend->getConfig->get('hoge')も
getConfigはメソッド。

$hoge_config = $this->backend->getConfig()->get('hoge');
だよ。@PHP5

PHP4ならひとつかませて
$config =& $this->backend->getConfig;
$hoge_config = $config->get("hoge");


0909nobodyさん2007/06/07(木) 00:27:25ID:???
自力でnew HogeManager()とかやってそうだ。
09109002007/06/07(木) 14:58:11ID:???
>>908
再三チェックしましたが、誤りは無いようです。
PHP4で
$config =& $this->backend->getConfig;
$hoge_config = $config->get("hoge");
も試してみましたが、
$config =& $this->backend->getConfig; の行でエラーが発生します。
$config =& $this->backend->getConfig();
も試しましたが同じくです。

>>907
bool(false)
となりました。
backendの時点でだめっぽいです。

09119002007/06/07(木) 15:00:58ID:???
var_dump(get_class($this));
では
string(19) "project_hogemanager"
が表示されます。
0912nobodyさん2007/06/07(木) 21:56:08ID:???
Actionクラスから、$this->backend->getDB() とやると、何も表示されなくなってしまって
困っています。
echo get_class($this->backend) で画面に表示させた場合、ちゃんとethna_backendとかえってきています。
また、Ethna_Backendクラス内の、getDB()関数の最初の行に、 echo "a";と書きましたが、
$this->backend->getDB()の実行で表示されていません。

誰か助けてください。
0913nobodyさん2007/06/08(金) 00:20:17ID:???
みろ!この香ばしい書き込みの増え具合を。

Ethnaの普及具合を表しているようだ。
0914nobodyさん2007/06/08(金) 01:50:49ID:???
どうみても php-users です。
ほんとうにありがとうございました。
09159002007/06/08(金) 03:08:18ID:???
>>904
> Ethna_AppManagerを継承したマネージャ作ってて
> Ethna_AppManagerのコンストラクタ実行されてないとかそれくらいしか思いつかない

これっぽいんですが、
改善策が良くわかりません、あふぉの俺に救いの手を orz
09169002007/06/08(金) 03:22:16ID:???
あぁぁ、Ethna_AppManagerのソース見たらわかりました、、、、
HogeManagerでコンストラクタ作ってたのがだめでした、、、
あああ、はまりました、、、
0917nobodyさん2007/06/08(金) 13:28:59ID:???
>>916
そうやって成長するものだよ。

ま、とりあえずソースコード嫁。
0918nobodyさん2007/06/08(金) 15:29:48ID:???
>>899
>>898は出来てると思われ。
ただ、何故にnameで返すのかを聞いてるんじゃないか
0919nobodyさん2007/06/08(金) 15:32:34ID:???
>>916
parent::Ethna_AppManager呼べば、コンストラクタ書いてもいける
0920nobodyさん2007/06/09(土) 10:13:10ID:???
コンストラクタをオーバーライドするなら、スーパークラスのコンストラクタを呼ばなきゃ意味がないというのはオブジェクト指向の基礎だと思うぞ。
0921nobodyさん2007/06/09(土) 14:09:54ID:???
>>920
そんなことは自動的にやってくれる言語が大半だろ。
手動で呼ばなきゃいけないってのはどっちかっつーとPHPの基礎。
0922nobodyさん2007/06/09(土) 20:39:44ID:???
>>921
おまいはJavaのsuper()も知らんのかと(ry
0923nobodyさん2007/06/09(土) 21:09:43ID:???
逆にコンストラクタをオーバーライドした時に
super()相当のメソッドをコールしなくても
自動的にスーパークラスのコンストラクタが
コールされる言語ってある?その言語の場合、
オーバーライドしたコンストラクタだけをコールして欲しくて
スーパークラスのコンストラクタを呼び出したくない時はどうやってんだろう?
0924nobodyさん2007/06/10(日) 00:08:48ID:???
コンストラクタ以前に、オーバーライドしてるのに勝手に親呼ばれたら困るでしょ。
統合環境によっては、クラス生成時のテンプレで用意くらいはしてくれるかもしれんが。
0925nobodyさん2007/06/10(日) 12:00:49ID:???
>>924
まったくその通り。
0926nobodyさん2007/06/10(日) 14:04:30ID:???
>>923
あまりいろんな言語知ってる訳じゃないが、C++とかC#とか。
Javaは呼ばれないの?

>>924
コンストラクタ以外なら勝手に親を呼ばれて困るのは当然だが、
親のコンストラクタを呼ばれちゃ困るってのはカプセル化が上手く出来てないのと違うか?
親のprivateフィールドとかどうやって初期化するんだよ。
0927nobodyさん2007/06/10(日) 15:10:20ID:???
C++は、確かに親クラスのコンストラクタが自動で呼ばれるけど、オーバーライドしてるわけじゃない。
0928nobodyさん2007/06/26(火) 21:27:23ID:???
http://www.amazon.co.jp/Ethna%C3%97PHP-LL%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AFBooks-%E8%97%A4%E6%9C%AC-%E7%9C%9F%E6%A8%B9-%E4%B8%80%E4%BA%95/dp/4774131393/ref=pd_bbs_sr_1/249-9902260-8715545?ie=UTF8&s=books&qid=1182839405&sr=8-1

↑これ買った人いる?
0929nobodyさん2007/06/26(火) 22:39:12ID:???
まだ売ってなかった
0930nobodyさん2007/06/27(水) 09:01:31ID:???
同じく。
0931nobodyさん2007/06/27(水) 11:06:55ID:???
あとで買いにいくばいー
0932nobodyさん2007/06/27(水) 11:35:05ID:???
今日見てくる。絶対買わないが。
0933nobodyさん2007/07/01(日) 00:19:17ID:???
Ethnaサイトのトップはいつまで「あけましておめでとうございます」なの?
0934nobodyさん2007/07/01(日) 10:27:50ID:???
次のバージョンが出るまで。
0935nobodyさん2007/07/01(日) 10:38:15ID:???
>>933
中国では一年中サンタクロースがでてるけど、そんな感じ。
0936nobodyさん2007/07/01(日) 17:02:00ID:???
>>933
それよりもドキュメントや使用例をもっといっぱい掲載してほしい。
サイト上の説明が適当すぎる。
0937nobodyさん2007/07/01(日) 21:16:09ID:???
>>936
たとえば、どのフレームワークのサイトくらい「使用例」「ドキュメント」が
あれば満足する?
0938nobodyさん2007/07/01(日) 23:45:37ID:???
> たとえば、どのフレームワークのサイトくらい「使用例」「ドキュメント」が
> あれば満足する?

mixi 位の規模のサンプルコードがないとダメだろ。
常識的に考えて。
0939nobodyさん2007/07/02(月) 20:57:37ID:???
ここは大規模なインターネッツですね
0940nobodyさん2007/07/03(火) 03:16:53ID:???
中規模プロジェクトのサンプル
Mixiまでは行かないが、そこら辺のBlogスクリプト規模とか
ぐらいがあれば、どうにでもなりそう。
0941nobodyさん2007/07/03(火) 08:05:26ID:???
そんな規模のサンプルはむしろ読みたくないな。
0942nobodyさん2007/07/03(火) 09:23:46ID:???
>>941
じゃあオマエは読むな
サンプルや使用例なんて多いに越した事はない

しかし、symfony.jpみたいにグダグダ書かれても読む気がウセるので
ちゃんとカテゴリや用途別にしっかりと纏めて読み易くすべき

フレームワークなんて楽する為にあるのに殆ど(っていうか全部?)のフレームワークが
わからんところはソース見てあたりまえの現状になってるのは本末転倒

ドキュメントの整備が追いつかないのであればEthnaに限らず
サイトに問い合わせコーナーを設けてどんなに下らん質問でも
ソース見ろとか言わずに誠心誠意真面目に答えるべき。
0943nobodyさん2007/07/03(火) 09:31:39ID:???
なんのために?
0944nobodyさん2007/07/03(火) 09:50:50ID:???
香ばしいね。
0945nobodyさん2007/07/03(火) 10:04:13ID:???
>>942
どんなに下らん質問でも 誠心誠意真面目に答える役はお前な。
0946nobodyさん2007/07/03(火) 14:46:10ID:???
サンプル読むならフレームワークのソース嫁。
0947nobodyさん2007/07/03(火) 18:37:19ID:???
>>942
> フレームワークなんて楽する為にあるのに殆ど(っていうか全部?)のフレームワークが
> わからんところはソース見てあたりまえの現状になってるのは本末転倒
そう思うならフレームワークなんて使わなければいいだけ。

他人がボランティアでやってることに商用サービスみたいなサポートを期待するのはお門違いだ。

0948nobodyさん2007/07/03(火) 20:54:16ID:???
> 他人がボランティアでやってることに商用サービスみたいなサポートを期待するのはお門違いだ。

それ本気で言ってるの?w
0949nobodyさん2007/07/03(火) 22:14:29ID:???
>>946
そういうのを見る度に何の為のフレームワークか
わからんようになるなぁ
0950nobodyさん2007/07/03(火) 23:03:58ID:???
なんで?
ソースコード=設計書だから、読むのが当たり前だと思うけど。

MFCのソースとかは読みたくないが。
0951nobodyさん2007/07/03(火) 23:25:16ID:???
サンプル無いと使えない奴らは使わなくてよいよwww
FWがカスだとユーザもカスしかいないなw
0952nobodyさん2007/07/03(火) 23:25:34ID:???
>>950
・MFCは読みにくいからソースは読まなくてよい
・Ethnaは読みやすいから読んで当然
・ソースコードは設計書である

(´ー`) ヤレヤレ
0953nobodyさん2007/07/03(火) 23:27:16ID:???
>>951
Ethnaってカスなん?w
0954nobodyさん2007/07/03(火) 23:33:46ID:???
カスだろw
他にももっと便利なPHPのFWいっぱいある中で
こんな旧式な設計のFW未だに使い続ける奴が不思議でしょうがない
0955nobodyさん2007/07/03(火) 23:34:13ID:???
>>951
アハハハハ・・・・・
漏れはEthnaなんて使わんけど
それを言い出したら厨から
作成者がカスだとマニュアルもカスなものしかないなぁ
とか言われるぞwwwww
レス数が950を超えています。1000を超えると書き込みができなくなります。