【发布时间】:2011-03-08 09:06:20
【问题描述】:
Bang Bang BANG....(我的头撞到墙上的声音)
无法执行 UPDATE 语句。 [包装:无法获取未定义列的 ColumnMap:: DISCOUNTCODE
我已阅读 this question 但这对我没有任何帮助,因为我的 propel.ini 中没有任何表前缀
有谁知道导致此错误的原因是什么? 是的,我已经清除了我的缓存,无数次地重建了我的架构和模型。 我的问题的唯一线索是它确实在我的本地主机上工作,而不是在实时服务器上。
如果我查看基类,我确实会看到 const DISCOUNTCODE = orders.DISCOUNTCODE
请帮忙...
【问题讨论】:
-
你真的有
const DISCOUNTCODE = orders.DISCOUNTCODE吗?我想你应该有类似const DISCOUNTCODE = "orders.DISCOUNTCODE";的东西。顺便说一句,您使用哪个版本的 Symfony / Propel? -
对不起,我有 DISCOUNTCODE = "orders.DISCOUNTCODE"。我认为用 Propel 2.1 运行 Symfony 1.2..
-
感谢您的帖子,但帮助不大。我首先构建我的数据库,然后从命令行使用 propel:build-schema 生成我的 schema.yml 文件。问题是 Propel 认为我要插入的列不存在???很奇怪。
-
我猜你有 Symfony 1.2 + Propel 1.2(还没有听说过 2.1)。我唯一可以建议您的是确保您在本地和实时环境中拥有完全相同相同的文件,例如由于某些模糊的“访问权限”原因,您无法在实时服务器上复制某些文件。您使用 FTP 客户端吗?在这种情况下,我建议使用 FileZilla,它有一个很好的 diff 功能。