模型相關特殊語法
更新時間:2020-05-26
1.獲取后臺開啟的模型
用于判斷模型后臺是否打開
{% set allmodel = Tools.getallmodel() %}
{% if allmodel['#模型標識#'] %}
{% for k1,v1 in allmodel %}
模型名稱:{{ v1['modelname'] }}
模型標示:{{ v1['model'] }}
模型類型:{{ v1['modeltype'] }}
{% endfor %}
{% endif %}
2.篩選語法
功能說明:一般用在列表頁,篩選指定范圍的模型詳情。篩選方式包括:字段篩選(文本和下拉框類型的自定義字段)、屬性篩選、分類篩選。
參數說明
offset是從第幾個開始,一般是“0”
limit是共展示多少條。
預置模型
{{ System.setCustomFilter('#模型標識#', 'cateid', System.params["Urlparam"]["cateid"]) }} //添加分類篩選
{% System.setCustomFilter('#模型標識#', '#字段名稱#', '#keywords#') %} //keywords是需要篩選的字段值
{% set z = System.getCustomData('#模型標識#', '#offset#', '#limit#',1) %}//1是固定值,不能更改
{% for k, v in z['data'] %}
{{ v['title'] }}
{% endfor %}
自定義模型
{{ Custom.setCustomFilter('#模型標識#', 'cateid', Custom.params["Urlparam"]["id"]) }} //添加分類篩選
{% Custom.setCustomFilter('#模型標識#', '#字段名稱#', '#keywords#') %}//keywords是需要篩選的字段值
{% set z = Custom.getCustomData('#模型標識#', '#offset#', '#limit#',1) %}//1是固定值,不能更改
{% for k, v in z['data']['data'] %}
{{ v['title'] }}
{% endfor %}
示例:
1、進行字段判斷
{% set standard = "" %} //standard是自定義的變量名稱,最好以字段名命名
{% if Custom.params["Urlparam"]['#字段名稱#'] is defined %} //判斷是否存在相應的字段值
{% set standard = Custom.params["Urlparam"]['#字段名稱#'] %} //把字段值賦給變量
{% endif %}
2、添加篩選鏈接
字段篩選(字段只能在自定義列表頁循環輸出,其他頁面目前無法進行循環輸出,需要寫死)
<a href="{{ Custom.urlMontage('add', '#變量名#', '#屬性值#' ) }}" class="list {% if #變量名# === '#屬性值#' %}active{%endif%}">#屬性值#</a>
如:
<a href="{{ Custom.urlMontage('add', 'standard', '國標GB' ) }}" class="list {% if standard === '國標GB' %}active{%endif%}">國標GB</a>
分類篩選(可循環輸出)
{% set paramStr = Tools.getCurHttpQuery(['#字段名稱#']) %}
{% set aaa = Custom.getAllCateMultiLevel('#模型標識#') %}
{% set sortData = Custom.arraySequence('#模型標識#',aaa, 'displayorder') %}
{%for k,v in sortData%}
<a href="{{v['linkurl']}}{% if (paramStr) %}?{{ paramStr }}{% endif %}" class="list {% if d['catename'] === v['catename'] %}active{%endif%}">{{v['catename']}}</a>
{%endfor%}
屬性篩選
{%set type=Product.urlFilter["property[#屬性名稱#]"] %}
<a href="'{{ Product.urlMontage("add", "property[#屬性名稱#]", "#屬性值#") }}" class="{%if type=="#屬性值#"%} active {%endif%}">#屬性值#</a>
3、獲取篩選結果
{{ Custom.setCustomFilter('#模型標識#', 'cateid', Custom.params["Urlparam"]["id"]) }}
{% if standard%}
{{ Custom.setCustomFilter('#模型標識#', '#字段名稱#', standard) }}
{% endif %}
{% set z = Custom.getCustomData('#模型標識#'', 0, 12, 1) %}
共搜索到 {{z['total']}} 條結果
{% for k, v in z['data'] %}
#內容#
{%endfor%}
3.頂踩功能
頂踩功能的適用范圍:模型詳情頁、模型列表頁、自定義列表頁
3.1語法說明
提交地址: /addattitude.html
提交方式:post
其他說明:同一個ip對同一個內容一天內只能支持或反對一次
使用示例:(頂踩在詳情中使用)
<form action="/addattitude.html" method="post">
<input type="hidden" name="id" value="{{Pageinfo['_id']}}"><br>
<br>
<input type="hidden" name="moduletype" value="{{globalviewdata['model']}}">
支持:<input name="attitude" value="1">
<button>btn </button>
</form>
代碼說明:
id: //當前信息的 id
moduletype //模型類型
attitude: 支持 or 反對 (支持 1 反對 0) //只能支持1次或者踩一次
3.2頂踩信息調取
功能說明:獲取某條信息的頂踩數據
預置模型:System.getAttitudeById('模型標識', Pageinfo['_id'])
自定義模型:Custom.getAttitudeById('模型標識', Pageinfo['_id'])
使用示例:
{{% set a = System.getAttitudeById('news', Pageinfo['_id']) %}}
支持:{{ a['pick'] }}
反對:{{ a['diss'] }}