Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 带服务的Zend框架模型_Apache Flex_Zend Framework_Model - Fatal编程技术网

Apache flex 带服务的Zend框架模型

Apache flex 带服务的Zend框架模型,apache-flex,zend-framework,model,Apache Flex,Zend Framework,Model,我有一个关于Zend框架的问题,主要是模型部分。我知道不存在抽象模型类,并理解其原因。我在博客上发了很多关于它的帖子,但找不到任何能向我清楚解释它的例子。我正在构建一个非常基本的应用程序。假设我们只有三张桌子。公司(ID、名称、街道、街道号、城镇)、元(ID、名称、描述)、company2meta(ID、companyID、元ID、值、注释)。所有类型的关系都存在(1n n1,nm)。还需要一个带有值对象的服务(amf)。因此,以下是我的想法: 我将在/model/dbTables/(Compa

我有一个关于Zend框架的问题,主要是模型部分。我知道不存在抽象模型类,并理解其原因。我在博客上发了很多关于它的帖子,但找不到任何能向我清楚解释它的例子。我正在构建一个非常基本的应用程序。假设我们只有三张桌子。公司(ID、名称、街道、街道号、城镇)、元(ID、名称、描述)、company2meta(ID、companyID、元ID、值、注释)。所有类型的关系都存在(1n n1,nm)。还需要一个带有值对象的服务(amf)。因此,以下是我的想法:

  • 我将在/model/dbTables/(Company.php、Meta.php、Company2Meta.php)下创建三个表类

  • 然后在models/中,我将添加User.php(基本类),它应该有saveCompany…、deleteCompany、getCompanyMeta…,并在所选表上进行操作

  • 服务类(/services/CompanyService.php)将在构造函数中创建模型的实例,并具有与模型相同的方法

  • 这是我的问题。数据应该如何流动,应该在哪里做什么?例如,当我在服务类中调用getCompany时,我希望它返回value对象,该对象包含关于公司及其元的所有信息。如果没有模型类,a可以从mate2company获取行形式的company和rowset,并将其转换为value对象,当我想要更新它时,我需要保存有关公司及其所有元的信息(需要查找新的(插入)、旧的(更新)和删除删除的…),那么应该在哪里进行?在模型中还是在服务中?我希望你能理解我的要求


    ps:对不起,我的英语…

    您的用户模型应该是这样的:

    class App_Model_User
    {
        protected $_data = array(
            'id' => null,
            'username' => null,
            'companyId' => null,
            'company' => null
        );
    
    public function setId($id)
    {
        $this->_data['id'] = $id;
    }
    
    public function getId()
    {
        return $this->_data['id'];
    }
    
    //Other setters getters..
    
    public function setCompany(Cms_Model_Company $company)
    {
        $this->_data['company'] = $company;
    }
    
    public function getCompany()
    {
        if (null == $this->_data['company']) {
            $this->setCompany(Cms_Service_Company::find($this->_data['companyId']));
        }
    
        return $this->_data['company'];
    }
    }
    
    因为一个用户和一家公司是另一种类型,所以他们必须是另一种类型