我想知道是否有人知道如何从数据库中已经存在的数据生成fixture.yml?
由于您可以使用构建模式来生成模式,有没有办法为数据做到这一点?
symfony propel:build-schema
在 symfony 1.4 中你只需要写:
./symfony doctrine:data-dump
你得到文件data/fixtures/data.yml
:-)
我在邮件存档中找到了解决方案。用户使用
symfony propel:data-dump > fixture.yml
在 Symfony 1.0 中使用以下命令:
$ php symfony propel-dump-data <APPLICATION_NAME> <FIXTURES_DIR_OR_FILE> [<ENVIRONMENT_NAME>]
在 1.1 和 1.2 版本中,使用以下命令:
$ php symfony propel:data-dump <APPLICATION_NAME> [<TARGET>] [--env=<ENVIRONMENT_NAME>]
我只需要在 symfony 1.2 和 Doctrine 下执行此操作。
symfony 原则:数据转储
这会将整个数据库转储到 data/fixtures/data.yml。我已经使用 .sql 文件将一些数据加载到数据库中,并希望它作为我的实时数据库的固定装置。我刚刚将 data.yml 文件编辑到我需要的数据库表中。
另一种方法是编写一些代码来读取数据库表并以 YAML 格式输出。