【问题标题】:Symfony Update a Model SchemaSymfony 更新模型模式
【发布时间】:2010-09-07 19:15:52
【问题描述】:

所以这是场景:

目前我们有一个包含 3 个模型的开发站点。我们发现我们不喜欢我们的初始模式并添加了几行。我们重新生成了架构(doctrine:build-sql)。

现在它迫使我们删除并重新创建所有表并转储所有信息,因为没有创建 ALTER,而只是创建了语句。没问题...

更新模型是个大问题。在我们运行 build-all 并弹出这样一些错误之后,即“未找到小部件排序”等。我们发现我们需要重建模型。所以我们可以用 symfony 学说:build-models course Course(Course 是表名...course 的模型)。这很有效,并且修复了 Symfony 中损坏的链接。

缺点是 actions.class.php 文件中的所有自定义代码都丢失了,对 _form.php 页面的自定义也丢失了。

我的问题是,我们如何存储自己的操作,以便在更新模型架构时它们不会丢失?类似地,模板等会重新生成,但不包含任何自定义。

在 symfony 中更新模型的模式肯定有一个简单的解决方案?

【问题讨论】:

  • 我很确定您的意思是“模型”,您输入了“模块”。
  • @jeremy 是的。对其进行了适当的编辑。

标签: php mysql symfony1


【解决方案1】:

找到了我的答案。您不会按说更新模块,而是更新数据库的模型。您可以更改您的 schema.yml 文件并进行 symfony 迁移

http://www.slideshare.net/denderello/symfony-live-2010-using-doctrine-migrations

【讨论】:

    【解决方案2】:

    如果您只想要 CRUD/最少的自定义,您可以使用管理生成器来完成:

    ./symfony doctrine:generate-admin appname Course
    

    常规模块一旦生成就无法在不丢失自定义内容的情况下进行更新 - 它们旨在成为一个起点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-02
      • 1970-01-01
      • 2023-03-21
      • 2015-03-26
      • 2020-11-07
      • 2015-06-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多