必须指定MVCForm敏捷工具包表单更新记录ID



希望是关于Age Toolkit的简单问题。目前有以下代码正在获取

AJAX响应中出错:SyntaxError:意外的令牌<

基本异常

必须指定记录ID,否则使用loadAny()

page\grant.php

<?php
class page_grant extends Page {
    function init(){
        parent::init();
        $saveForm=$this->add('MVCForm');
        $model=$this->add('Model_Grant')->load($_GET['id']);
        $saveForm->setModel($model);
        $saveForm->addSubmit();
        $saveForm->onSubmit(function($saveForm){
            $saveForm->update()->js()->univ()->successMessage('Grant info saved.')->execute();
        });
    }
}

和Model_Grant:

<?php
class Model_Grant extends Model_Table {
    public $table='minigrant';
    function init() {
        parent::init();
        $this->addField('grant_number');
        $this->addField('grant_name');
        $this->addField('uid');
    }
}

数据加载良好,但无法根据上述错误消息将其保存回。

您必须将stickyGET添加到id字段:

<?php
class page_grant extends Page {
    function init(){
        parent::init();
        $this->api->stickyGET('id');
        $saveForm=$this->add('MVCForm');
        $model=$this->add('Model_Grant')->load($_GET['id']);
        $saveForm->setModel($model);
        $saveForm->addSubmit();
        $saveForm->onSubmit(function($saveForm){
            $saveForm->update()->js()->univ()->successMessage('Grant info saved.')->execute();
        });
    }
}

在上找到数据:http://agiletoolkit.org/learn/tutorial/jobeet/day8

敏捷工具包确实需要一个包含更多这样的示例的文档源,因为它可以很容易地使用我使用过的最好的框架。

如果他们(@romanish)能把文档做得更好,那么我认为它会做得更好。我想他们可能也需要更改AGPL的许可证,但这对我个人来说并不重要,因为我正在开发OSS。

最新更新