7.14-7.21 JLL实习日志-DropDownBox Upgrade

来源:互联网 发布:速达进销存软件 编辑:程序博客网 时间:2024/05/22 03:14
  1. Conservation of JLL broker 的 下拉框设置
    特点 是不需要 删选 重复 的 用户 ,因为 不会有 这样 的情况 ,直接 在 view_conservation里面 选择所有 的 JLL_broker JLL_brokers= UserRole.objects.all()
    然后 在 template 端 做一个 循环
 <div class="col-md-4"> <div class="input-group "> <span class="input-group-addon btn-danger">       {{ui_setting.JLLBroker }}</span> <select id="insert_value" class="form-control" multiple="multiple" style="display:none" > {% for JLLBroker in JLL_brokers %}<option value='{{ JLLBroker.id }}' id='{{ JLLBroker.id }}'>{{ JLLBroker.user_nickname }}</option>{% endfor %}</select></div></div>

  1. conservation_Type in Conseravtion

    form_policy端

conversation_type_choices = [('1',u'brand update'),('2',u'property update'),('3',u'market data share'),('4',u'general')]

selection_box 端

    添加 selection_box = [,conversation_type_choices]

form端 添加

class Conversation_Brand_Form(ModelForm):    class Meta:        model = Conversation_Brand        fields = form_setting.form_sets.conversation_brand_form        company_contact_form_required = form_setting.form_sets.conversation_brand_form_required        widgets = {            'Conversation_type':forms.Select(choices=conversation_type_choices),        }

view 端 ,把 conversation_type_choices 传到 前端 去

  conversation_type_choices = form_sets.conversation_type_choices

template 端 ,利用 循环 得到 下拉框 的 形式

<div class="col-md-4">  <div class="input-group ">  <span class="input-group-addon btn-danger">{{ ui_setting.Conversation_type }}</span> <select id="filter-display" class="form-control" multiple="multiple" style="display:none"> <option value='' id=''></option> {% for k,v in conversation_type_with_uniq_names_2 %}                                                 <option value='{{ k }}' id='{{ k }}'>{{ v }}</option>{% endfor %} </select> </div> </div>

CityName in Company 需要在 这边 做一个 筛选 的 机制 ,需要 把 相同 的 城市 名称 去掉
view 端 ,筛选 代码 ,使用 的 是 set()方式
参考 的 地址 是 这边

 companies = Company.objects.all()    cities_seen = set()    cities_unique = []    for company in companies:        if company.City not in cities_seen:            cities_unique.append(company)            cities_seen.add(company.City)    if filtervalue or company_type or city_name:        companies = Company.objects.all()        for item in companies:            if filtervalue:                value_list = [item.Pref_Company_Name_Flg, item.Pref_Company_Name, item.Company_Type, item.Company_Name, item.Company_Name_SC, item.Pref_Client_Name, item.Country,item.City,item.Address]                if not views.containsAnyInList(value_list,filtervalue):                    companies=companies.exclude(id=item.id)            if company_type:                company_type_list = company_type.split(',')                print 'company_type',company_type,'company_type_list',company_type_list,'item.Company_Type',item.Company_Type                if not views.containsAnyStringInList(company_type_list, item.Company_Type):                    companies=companies.exclude(id=item.id)            if city_name:                city_name_list = city_name.split(',')                print 'city_name_list',city_name_list,'item.City',item.City                if not views.containsAnyStringInList(city_name_list, item.City):                    companies=companies.exclude(id=item.id)        return render_to_response(ui_sets['search_company_list'], {'companies': companies, 'message_for_add_result':message_for_add_result,'companies_with_uniq_names':choices,'cities_with_uniq_names':cities_unique}, context_instance = RequestContext(request))

template 端,这边 的 value和 id 都是 使用 的string 类型 的 ,因为 在 添加 新的 city的 时候city那 一栏 没有 使用 下拉框 机制 使用 的 是 任意 填写 的 方式

<div class="col-md-4" > <div class="input-group "> <span class="input-group-addon btn-danger">{{ ui_setting.City }}</span> <select id="insert_value" class="form-control" multiple="multiple" style="display:none"> {% for city in cities_with_uniq_names %}  <option value='{{ city.City }}' id='{{ city.City }}'>{{ city.City }}</option>{% endfor %}    </select> </div> </div>
原创粉丝点击