2

谁能帮我在 POS 合作伙伴屏幕中创建一个下拉列表。我在 pos.xml 文件中添加了这个,但下拉列表是空的。谢谢

<div class='client-detail'>
     <span class='label'>CustomerGroup</span>
     <select class='*what to place here?*' name='group_id'>
         <option value=''>None</option>
         <t t-foreach='*what to place here?*' t-as='group'>
             <option t-att-value='group.id' t-att-selected="partner_group_id ? ((group.id === partner.group_id[0]) ? true : undefined) : undefined"> 
                 <t t-esc='group.name'/>
             </option>
         </t>
     </select>
</div>

我已经从国家下拉列表中复制了这个。

4

1 回答 1

3

例子.js

您可以根据需要设置 self.groups 和 self.partners 的值。

 render_function : function(){
    var self = this;
    var template_window =  $(QWeb.render("template_name", {
            groups : self.groups,
            partners : self.partners,
            }));
    template_window.appendTo(this.$el);
  },

例子.xml

   <div class='client-detail'>
         <span class='label'>CustomerGroup</span>
         <select class='group_class' name='group_id'>
             <option value=''></option>
             <t t-foreach='groups' t-as='group'>
                 <option t-att-value='group.id' t-att-selected="partner_group_id ? ((group.id === partner.group_id[0]) ? true : undefined) : undefined"> 
                     <t t-esc='group.name'/>
                 </option>
             </t>
         </select>
    </div>

您可以在“group_class”的位置设置任何类名,并且可以使用该类名将选定的值从 gui 获取到您的 js 代码。

t-foreach='groups' 这里的 groups 是您在渲染模板时从 js 传递的字典键的名称。

于 2017-06-12T09:35:37.173 回答