流行的火焰图标在 CKAN 中不显示
popular flame icon does not display in CKAN
场景:
我在 helpers.py 中使用默认的流行函数。但是,它不会显示超过 10 次浏览的 package/resource 之后的图标。我如何在我的 resource_item.html
模板中设置流行功能如下:
{{ h.popular('views', res.tracking_summary.total, min=10) }}
我还检查了将由 h.popular
:
呈现的片段
{% if number >= min %}
<span class="popular ckan-icon ckan-icon-flame" title="{{ title.format(number=number) }}" xmlns="http://www.w3.org/1999/xhtml">{{ _('Popular') }}</span>
{% endif %}
它只能渲染文本'Popular'。我试图删除文本,CKAN 似乎无法获取 ckan-icon-flame
。然后我查看了icons.less
,已经定义了ckan-icon-flame
附加信息:
我实现了一个定制的跟踪工具。所以我没有在我的 ckan.ini
文件中启用 ckan.tracking_enabled
。我想知道此更改是否与正确加载图标有关。但是根据我对代码的阅读,我没有发现任何与图标渲染相关的条件。
更多信息:
variable.less:
@imagePath: "../../../base/images";
@spritePath: "@{imagePath}/sprite-ckan-icons.png";
icons.less:
.ckan-icon {
//.ie7-restore-right-whitespace;
display: inline-block;
vertical-align: text-bottom;
position: relative;
top: 2px;
width: 16px;
height: 16px;
background-image: url("@{imagePath}/sprite-ckan-icons.png");
background-repeat: no-repeat;
background-position: 16px 16px;
}
.ckan-icon-background-position(@offset,
@size) {
@w: "@{size}X";
@h: "@{size}Y";
@x: "@{size}OffsetX";
@y: "@{size}OffsetY";
width: @@w;
height: @@h;
background-position: (@@x * @offset) @@y;
}
.ckan-icon-flame {
.ckan-icon-background-position(2,
"medium")
}
CKAN 有默认值 css。它还允许开发人员自定义默认 css。我的问题是由覆盖引起的。我的新样式 sheet 将完全覆盖默认 css 而不是将它们添加到默认文件中。更详细的讨论可以参考这里的issues:https://github.com/ckan/ckan/issues/4542
场景:
我在 helpers.py 中使用默认的流行函数。但是,它不会显示超过 10 次浏览的 package/resource 之后的图标。我如何在我的 resource_item.html
模板中设置流行功能如下:
{{ h.popular('views', res.tracking_summary.total, min=10) }}
我还检查了将由 h.popular
:
{% if number >= min %}
<span class="popular ckan-icon ckan-icon-flame" title="{{ title.format(number=number) }}" xmlns="http://www.w3.org/1999/xhtml">{{ _('Popular') }}</span>
{% endif %}
它只能渲染文本'Popular'。我试图删除文本,CKAN 似乎无法获取 ckan-icon-flame
。然后我查看了icons.less
,已经定义了ckan-icon-flame
附加信息:
我实现了一个定制的跟踪工具。所以我没有在我的 ckan.ini
文件中启用 ckan.tracking_enabled
。我想知道此更改是否与正确加载图标有关。但是根据我对代码的阅读,我没有发现任何与图标渲染相关的条件。
更多信息:
variable.less:
@imagePath: "../../../base/images";
@spritePath: "@{imagePath}/sprite-ckan-icons.png";
icons.less:
.ckan-icon {
//.ie7-restore-right-whitespace;
display: inline-block;
vertical-align: text-bottom;
position: relative;
top: 2px;
width: 16px;
height: 16px;
background-image: url("@{imagePath}/sprite-ckan-icons.png");
background-repeat: no-repeat;
background-position: 16px 16px;
}
.ckan-icon-background-position(@offset,
@size) {
@w: "@{size}X";
@h: "@{size}Y";
@x: "@{size}OffsetX";
@y: "@{size}OffsetY";
width: @@w;
height: @@h;
background-position: (@@x * @offset) @@y;
}
.ckan-icon-flame {
.ckan-icon-background-position(2,
"medium")
}
CKAN 有默认值 css。它还允许开发人员自定义默认 css。我的问题是由覆盖引起的。我的新样式 sheet 将完全覆盖默认 css 而不是将它们添加到默认文件中。更详细的讨论可以参考这里的issues:https://github.com/ckan/ckan/issues/4542