小编wmk*_*wmk的帖子

Silverstripe ORM:按$ belongs_many_many关系的数量排序

如何在查询中获得最活跃的博客标签?

我有这两个DataObjects:

class BlogTag extends DataObject {

//...

    /**
     * @var array
     */
    private static $belongs_many_many = array(
        'BlogPosts' => 'BlogPost',
    );
Run Code Online (Sandbox Code Playgroud)

class BlogPost extends Page {

//...

    /**
     * @var array
     */
    private static $many_many = array(
        'Tags' => 'BlogTag',
    );
Run Code Online (Sandbox Code Playgroud)

现在,我想知道如何获得一个DataList,其中所有的BlogTags都是根据与他们相关的博客帖子排序的.这就是我已经拥有的,但不知怎的,我不知道如何按BlogPosts.Count()排序:

public function getPopularBlogTags($limit = 5) {
    $tags = BlogTag::get()
        ->sort('BlogPosts.Count()') //doesn't work
        ->limit($limit);

    return $tags;
}
Run Code Online (Sandbox Code Playgroud)

silverstripe

3
推荐指数
1
解决办法
497
查看次数

SilverStripe:如何在模板中呈现正常的for-each循环

嗨,我是SilverStripe的新手.

$AllCountries想要使用循环在模板中呈现数组.

如果有模型,那么我可以轻松地做到这一点,但我想使用我在这里定义的数组来做到这一点.

Array
    (
        [AD] => Andorra
        [AE] => United Arab Emirates
        [AF] => Afghanistan
        [AG] => Antigua and Barbuda
        [AI] => Anguilla
    );


<select name="Country" class="dropdown form-input" id="country">
        <% loop $AllCountries %>
            <option value="$key">$value</option>
        <% end_loop %>
</select>
Run Code Online (Sandbox Code Playgroud)

提前致谢 :)

php loops silverstripe

2
推荐指数
1
解决办法
394
查看次数

标签 统计

silverstripe ×2

loops ×1

php ×1