2013-02-21 50 views
0

我正在寻找一种方法来快速初始化我们的应用程序,使用当前定义的数据库模式并将数据种到zendframework 2中的数据库中。这在现代Web像rails这样的框架,play !,你可以命名它,但我不知道它是否存在于zf2中。我没有找到关于此的任何官方文档:)zendframework 2 - 加载初始数据和数据库模式

回答

1

使用Phing进行该任务。初始化(安装)您的应用程序不应该由应用程序本身完成,而应由Phing等外部代理完成。

这里是你如何安装你的数据库,并与初始数据填充一个例子phing目标:

<target name="recreate-db"> 
    <echo message="[Data] Drop and recreate database..." /> 
    <pdosqlexec 
      url="mysql:host=${db.project.host};dbname=${db.project.dbname}" 
      userid="${db.project.username}" 
      password="${db.project.password}" 
      onerror="abort"> 
     DROP DATABASE IF EXISTS `${db.project.dbname}`; 
     CREATE DATABASE `${db.project.dbname}`; 
    </pdosqlexec> 
    <echo message="[Data] Populate database with schema and start-data ..." /> 
    <pdosqlexec 
      url="mysql:host=${db.project.host};dbname=${db.project.dbname}" 
      userid="${db.project.username}" 
      password="${db.project.password}" 
      onerror="abort"> 
     <transaction src="${basePath}/db-versioning/schema.sql" /> 
     <transaction src="${basePath}/db-versioning/start-data.sql" /> 
    </pdosqlexec> 
</target>