假设我有一个名为 的数据库表article
,并且为每篇文章分配了一个type
(1 = 标准文章,2 = 赞助文章等)。
使用 Propel 2,是否可以执行以下操作?
第 1 步:选择 10 篇最新文章,按降序排列type = 1
(这很简单)。
$articles = ArticleQuery::create()
->filterByType(1)
->orderByPublishedAt('desc')
->limit(10)
->find();
第二步:随机选择2篇文章,type = 2
随机插入到当前$articles
对象中。这是我不知所措的一步。
例如,最终生成的选择将如下所示:
- 标准文章
- 标准文章
- 随机赞助文章(此处随机插入)
- 标准文章
- 标准文章
- 随机赞助文章(此处随机插入)
- 标准文章
- 标准文章
- 标准文章
- 标准文章
- 标准文章
- 标准文章
似乎我应该能够ArticleQuery
通过编写某种insertRandomSponsoredArticles()
函数来扩展类,但我不太确定如何去做。