使用CakePHP如何从数据库导出数据。不包括架构

时间:2012-09-05 21:48:04

标签: php mysql cakephp

在我的CakePHP应用程序中,我已经导出了我的数据库模式,但是现在我只需要用于为用户预填充的数据。

无效,因为它只生成架构:

cake schema generate

寻找能够在db中生成当前数据的插入或更新的解决方案。

更新

这是我正在写的安装程序。当用户完成安装时,它应该使用应用程序所需的数据填充数据库。

2 个答案:

答案 0 :(得分:3)

使用MySQL执行此操作:

mysqldump -u <username> -p <databasename>

替换您的用户名和数据库名称。

答案 1 :(得分:1)

注意: OP不会询问如何从数据库命令行获取数据。他想创建一个安装程序,在用户运行安装时填充数据库。例如,当你安装WordPress时,你不会运行mysqldump,对吗?该应用程序负责处理它。这是类似的情况。

最简单的方法是使用应用程序附带的模型。

检查系统是否已安装,如果未运行,请执行以下操作:

  1. 以表格
  2. 打开安装程序,询问数据库凭据
  3. 使用凭据创建数据库
  4. 如果无法创建数据库,请说明必须创建数据库 手动数据库
  5. 将凭据保存到database.php中的正确位置 配置
  6. 在控制器中创建架构
  7. 构建架构后,从中加载所有预设数据 模型
  8. 利用蛋糕内的安装控制器/ db模型进行提升。例如,如果要预加载某些配置设置:

    $config['Config']['setting_1'] = 'foo';
    $config['Config']['setting_2'] = 'bar';
    
    $this->loadModel('Config');
    $this->Config->create();
    $this->Config->save($config);
    

    希望有所帮助。