问题标签 [propel2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
192 浏览

php - Propel2 diff 使用 PostgreSQL 检测到不存在的更改

我正在使用带有 PostgreSQL 的 Propel2 ORM,这是我的配置:

这是我的示例架构:

PostgreSQL 9.5 已全新安装在 Ubuntu 16.04 上。当我运行propel diff并且propel migrate第一次一切正常并且生成表格时。

这是第一个生成的迁移: http: //pastebin.com/hK9qwfeA

如果在不更改架构的情况下,我重新运行 diff propel 检测到更改(不存在):

使用以下生成的迁移文件: http: //pastebin.com/Yx143CKp

当然,如果我执行迁移文件 SQL 抱怨:

我无法弄清楚发生了什么。以上所有,使用更复杂的模式(以及这个模式)都可以在 MySQL 中正常工作。

有任何想法吗?

编辑:这是第一次迁移中生成的表的 pgSql 的 SQL:

0 投票
1 回答
755 浏览

php - 推动唯一密钥对的验证

在我的数据库中user_group表 UNIQUE_KEY 由两列user_iduser_group_id. 这是它在推进模式中的样子:

如果它大约是一列,那么您可以设置验证行为,如下所示:

所以我想知道的是如何为密钥对user_iduser_group_id. 有没有可能传递一个column_names数组?任何建议都将是可观的。谢谢你 。

0 投票
0 回答
28 浏览

propel2 - 对象是否保证在 postSave 中有 ID?[推进2]

在 Propel2 中保存对象时,是否保证在 postSave 中有 ID?我很难找到答案。

0 投票
2 回答
453 浏览

php - 使用左连接限制 Propel v2 查询结果中的字段

我正在使用Propel ORM v2从一个表中检索记录,该表使用外键链接到另一个表的记录。我想只返回父表和子表中的某些字段。

做这个的最好方式是什么?

我的表结构如下所示:

我尝试了以下方法,但查询没有返回User带有子对象的所需对象,并且只返回对象和子对象的Profile选定字段:Id, NameUserTelephoneNumberProfile

非常感谢任何建议

0 投票
1 回答
1070 浏览

php - How to have views on the Propel orm as a query class?

I have a database with two tables and one view, I use propel init for creating a project, now when I just have my two tables on the Propel created files and I can just get query from my tables I don't access to my view for getting the query from it!

I read some of the related issues on their Github repository about views on propel but doesn't find any way to take my view like my tables on PHP,

Anyway for now I want to know is there any way to have my view on the propel and use that class like table normal query class for getting the query from it?

0 投票
0 回答
54 浏览

php - 在 Propel 上创建复杂查询

我有一个带有列(id, name, title, time)的表,我想获得一个查询,通过计算具有时间条件的行来为每一行提供一个虚拟数字!
我的 sql 选择是这样的:

如何使用推进查询类获得这样的查询?
如果这不能发生,你会建议用什么替代方法来做呢?

谢谢 ;-)

0 投票
1 回答
6084 浏览

php - php(propel)中的集合和数组有什么区别?

集合和按需补水
使用集合而不是数组的优点是 Propel 可以按需补水模型对象。使用此功能,您在检索大量结果时永远不会出现内存不足的情况。通过 Model Queries 的 setFormatter() 方法,按需补水非常容易触发:

1)这里的“水合”是什么意思?
2)集合和数组有什么区别?

资料来源:推进@1.6

0 投票
4 回答
651 浏览

php - 在 Propel 中使用 toArray() 时是否可以删除带有 *RECURSION* 的字段?

我正在使用 Propel 2。我正在通过关系为对象补水,如下所示:

生成的 Array 看起来像这样:

我想删除值所在的字段*RECURSION*。我尝试使用$alreadyDumpedObjects(3rd) 参数,toArray()但这似乎没有帮助。我也可以通过unset()调用进行某种形式的数组行走,但我希望有更好的方法,也许使用格式化程序或其他东西?

对于加分,我很想删除定义外键关系的列。例如,CustomerId会去,但Customer会留下。

0 投票
1 回答
192 浏览

mysql - 如何使推进 orm 使用区分大小写的名称

Propel ORM 无法在生产环境中查询,因为它连接的数据库启用了区分大小写(linux/ubuntu)。由于数据库由另一个组织管理,因此修复它比从我们端更改代码更难。

有没有办法强制 Propel ORM 使用区分大小写的名称?

谢谢!

0 投票
0 回答
79 浏览

mysql - 推进2;如何使用 querybuilder 进行子选择查询

问题:

我无法找到使用 QueryBuilder 构建查询的解决方案(也许首先使用常规 sql 查询来完成它会有所帮助):

尝试检索用户的所有客户(在用户链接的商店之一具有商店积分),需要总积分(属于该用户的商店的积分总和)作为虚拟列(能够订购),使用分页()。

数据库结构:

表客户

表用户

餐桌店

表 user_shops

表 customer_shop_credits

预期结果:

在为用户 1 检索客户时,我希望获得 100 个积分的客户 1 和 3 个积分的客户 2

我得到的最近的:

这导致以下查询:

但是给我的结果是错误的学分。不确定CROSS JOIN。当我编辑此查询并将其设置为 JOIN 并ON (credits_alias.customer_id = customers.id)用作条件时,积分总和更好,但似乎有加倍总和的经典连接问题