1

对 symfony/doctrine 应用程序进行小模式更新的最佳方法是什么?

我的问题是,我正在做一个新的副项目,偶尔会发现自己在这里添加一个新专栏,在那里我发现需要一个新专栏。但是,我的数据库已经有现有数据,我不想每次都运行完整的重建并删除我的数据库以及更改。

我也不想写固定装置。它们很烦人,使用我的应用程序插入数据并在开发时保留它要容易得多。我也不想编写迁移来添加一两列,尤其是当我经常这样做时。

我唯一的选择是:

  1. 在每次架构更改后对架构文件进行更改并擦除数据库 - 或 -
  2. 更新架构文件并在我的数据库上手动运行更改语句

最终,我想做的是要么对我的数据库进行更改,让 symfony 弄清楚模式文件应该是什么样子,或者对模式文件进行更改,让 symfony 弄清楚对现有的数据库。

请帮忙!

谢谢。第一次使用 SO,迫不及待地想看看我是否得到回应!

4

2 回答 2

3

看看这个帖子:

您可以使用 Doctrine 从现有表生成迁移吗?

和这个链接: http ://www.doctrine-project.org/documentation/cookbook/1_0/en/code-igniter-and-doctrine:setup-command-line-interface

我们一直在通过更改 yaml 文件从教义生成更改,使用 generate-migrations-diff 选项运行教义命令以生成迁移文件,然后使用 migrate 选项迁移更改。

于 2009-11-24T18:29:13.277 回答
-1

我确切地知道你的意思。有两种方法可以告诉 symfony 你的数据库结构是什么样的:

  1. 创建 yaml 文件 -> 运行 build-sql 命令 -> 运行 insert-sql 命令
  2. 在 RDBMS 中创建数据库 -> 运行 build-schema 命令

使用方法 1,您的数据每次都会被清除。使用方法 2,您的数据保持不变。方法 2 的唯一问题是,您将清除 yaml 文件中的任何特定于教义的属性,并且必须重新添加这些属性。不过,对我来说,这在屁股而不是必须将数据重新加载到数据库中。

于 2010-04-23T14:46:09.653 回答