2015-09-08 54 views
0

如果輸入select,我有一個屬性。當我嘗試從此屬性內容獲取值時,它會給出標識號而不是值。我打電話就像從選擇屬性中的attribute_view_gui分配值

$node.data_map.my_attribute_identifier.content 

這是預期的行爲。 https://doc.ez.no/eZ-Publish/Technical-manual/4.x/Reference/Datatypes/Selection

原始輸出 的使用此數據類型的ezcontentobjectattribute對象的「內容」返回的所選選項的標識號的陣列(如串)。

我想要的值不是標識號。我可以得到,使用attribute_view_gui

attribute_view_gui attribute=$node.data_map.my_attribute_identifier 

但我不能給這樣的變量賦值。我如何從select屬性分配值?

回答

-1

你可能想看看ezselection的視圖模板: ezselection.tpl

這是代碼,eZ Publish的用途來查看數據類型。

內容ezselection.tpl的:
{let selected_id_array=$attribute.content} {section var=Options loop=$attribute.class_content.options} {section-exclude match=$selected_id_array|contains($Options.item.id)|not} {$Options.item.name|wash(xhtml)}{delimiter}<br/>{/delimiter}{/section} {/let}

+0

儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – LeftyX

+1

感謝您的建議,@ LeftyX!我現在添加了ezselection.tpl的內容。 –

0

首先,我建議你要經常檢查默認模板在ezpublish搞清楚應該怎麼看模板...

也許這個例子可以幫助:

<input 
    id="whatever_id_you_like" 
    type="text" size="50" 
    name="ContentObjectAttribute_ezstring_data_text_{$node.object.data_map.YOUR_ATTRIBUTE_SHORT_NAME.id}" 
    value="{$YOUR_VAR}" 
/> 

或u可以使用默認視圖屬性是這樣的:

{attribute_view_gui attribute=$node.data_map.YOUR_ATTRIBUTE_SHORT_NAME} 

也可能是有益的 - 方式找到正確的路徑(有時你需要在路徑的末尾添加「.data_int」「.data_text」來顯示數據):

{$路徑 |屬性(顯示,深度)}例如:

{$node|attribute(show,2)} 

{$YOUR_FANCY_VAR.content|attribute(show,2)}