短い答え:YES、あなたは基本的にすべてのテーブルが完全に設定しているATK4
でこれをモデル化することができます。
モデルを作成するには、単純にStudent.phpファイルを作成し、 を/ lib/Model /フォルダに配置します。
class Model_Student extends Model_Table {
public $entity_code = 'Student';
function init() {
parent::init();
$this->addField('name')->caption('Student Name');
}
}
あなたが他のテーブルに同じ操作を行うことができます。
Program (id, name, startdate, enddate, firstpaymentDueDate, qtyOfPeriods, price)
と paymentSchedule (id, student_id, dueDate, amount)
のモデルについての詳細を知るためには、私はあなたがイントロを読むことをお勧め: http://agiletoolkit.org/learn/understand/model/intro
テーブルの処理(など)は異なる ストーリーです。これを行うには、DSQL(動的SQL)が必要です。
Program
テーブルが Model_Program
というモデルクラスに属していると仮定します。これは、特定のプログラムのためのエントリを取得し、 はその後、支払いスケジュールに挿入
$m = $this->add('Model_Program');
$v = $m->dsql()
->field('qtyOfPeriods')
->field('price')
->where('id=',$programid) // specific program
->do_getOne();
$m = $this->add('Model_PaymentSched');
$r = $m->dsql()
->set('student_id',$studentid) // specific student
->set('amount',$v['price'])
->do_insert();
:エントリ取得するには
おかげで、私はすべてをやろうとwhy-知っ-don'tましたMVCForm、および定期的なフォームを考慮していないと単に私のdsqlのdo_insert ...あなたは私の目を開けた。ありがとう! – mcanedo
ありがとうございました。あなたも歓迎です。私もあなたのディルマを理解しています。私はまた、昨年12月にATK4を試し始めました...そして、私はこれらの事例をすべてまとめて、私の頭の中にアイデアを入れて、機能的なエンドツーエンドのアプリケーションを作ってみましょう。ピースバイプの例はいい、面白いですし、働いています。しかし、それらをまとめてみると、初めてのユーザーにとっては迷路のようです –