0

我正在使用 symfony 创建一个项目(第一个项目),我阅读了文档和所有内容,一切正常,我用学说创建了代表我的数据库的类,一切都很好,但是我需要更改表的一个字段,所以,我去了 symfony/lib/model/doctrine/base ,找到我的课程,我改变了它,完成了!工作正常。

问题是当我需要使用学说制作新模型时

php symfony doctrine:build-model

它将我的旧模型带到旧版本,并且出现数百个错误,我认为还有其他文件要更改,但我不知道在哪里,有人可以帮助我吗?

我已经尝试过php symfony cc我正在使用 symfony 1.4

谢谢。

4

2 回答 2

1

正如@denys281 所说,您不必触摸基类,因为每次重建模型时它们都会被覆盖。您已经测试过这个案例..

如果要更新数据库中的字段,您有 2 个选项:

  1. 你做出了改变

    • 修改您config/doctrine/schema.yml以更新您想要的字段
    • 重建你的课程php symfony doctrine:build --all-classes
    • 手动更新数据库中的字段
  2. 让教义处理变化

    • 修改您config/doctrine/schema.yml以更新您想要的字段
    • 运行php symfony doctrine:generate-migrations-diff以在您以前的架构和新架构之间建立差异
    • 重建你的课程php symfony doctrine:build --all-classes
    • 使用迁移数据库php symfony doctrine:migrate

您将在这个适用于 sf1.2 但适用于 sf1.4 的 capter中找到有关迁移的更多信息。

于 2013-04-04T07:40:29.537 回答
0

不要改变基类!

你有lib/model/doctrine文件:

  • Name.class.php
  • 名称表.class.php

Name.class.php 中,您可以编写自定义 getter 和 setter,在NameTable.class.php中,您可以编写 DB 查询。

您可以阅读更多内容:第 3 天:数据模型第 6 天:模型的更多信息

于 2013-04-03T20:38:08.610 回答