автокомплит городов в админке

remotes/origin/HEAD
ya_dim4ik 9 years ago
parent bf4f2caa46
commit 63ee76a703
  1. 2
      README.md
  2. 2
      city/admin.py
  3. 1
      city/search_indexes.py
  4. 12
      static/custom_js/main.js
  5. 6
      templates/client/includes/header.html

@ -70,6 +70,8 @@ cd /opt/solr-4.10.4
bin/solr start -p 8983 bin/solr start -p 8983
``` ```
Если возникает ошибка Solr: [Reason: Error 404 Not Found] - http://stackoverflow.com/a/30633740
# #
```sh ```sh
python manage.py migrate expobanner 0001 --fake python manage.py migrate expobanner 0001 --fake

@ -99,8 +99,8 @@ def city_change(request, url):
return render_to_response('city_add.html', args) return render_to_response('city_add.html', args)
def search_city(request): def search_city(request):
# country = request.GET.get('country')
term = request.GET.get('term') term = request.GET.get('term')
# if not term: # if not term:
# qs = City.objects.language().filter(country=country)[:200] # qs = City.objects.language().filter(country=country)[:200]

@ -29,7 +29,6 @@ class CityIndex(indexes.SearchIndex, indexes.Indexable, ExpoSearchMixin):
return City return City
def index_queryset(self, using=None): def index_queryset(self, using=None):
return self.get_model().used.all() return self.get_model().used.all()
def get_updated_field(self): def get_updated_field(self):

@ -238,22 +238,25 @@ $(document).ready(function(){
// end on-of events // end on-of events
if( $("#id_city" ).length ) { if( $("#id_city" ).length ) {
$('#id_city').select2({ $('#id_city').select2({
placeholder: "Город", placeholder: "Город",
width: 'element', width: 'element',
ajax: { ajax: {
url: "/admin/city/search/", url: "/admin/city/search/",
dataType: "json", dataType: "json",
quietMillis: 200, quietMillis: 200,
data: function(term, page, country){ data: function(term, page, country){
var country = $('#id_country').val() var country = $('#id_country').val();
return {term: term, return {term: term,
page: page, page: page,
country: country}; country: country};
}, },
results: function (data) { results: function (data) {
if (typeof(data) == 'string'){
data = JSON.parse(data);
}
var results = []; var results = [];
$.each(data, function(index, item){ $.each(data, function(index, item){
results.push({ results.push({
@ -268,7 +271,6 @@ $(document).ready(function(){
var id= $(element).val(); var id= $(element).val();
var text = $(element).attr('data-init-text'); var text = $(element).attr('data-init-text');
callback({id: id, text:text}); callback({id: id, text:text});
} }
}); });

@ -89,7 +89,7 @@
<div class="clb-settings"> <div class="clb-settings">
{# <a class="cl-btn icon-gear" href="/profile/settings/">{% trans 'настройки' %}</a>#} {# <a class="cl-btn icon-gear" href="/profile/settings/">{% trans 'настройки' %}</a>#}
<a class="" href="/profile/settings/"><i class="fa fa-cog"></i></a> <a href="/profile/settings/"><i class="fa fa-cog"></i></a>
{% if user.is_superuser %} {% if user.is_superuser %}
<a href="/admin/"><i class="fa fa-lock"></i></a> <a href="/admin/"><i class="fa fa-lock"></i></a>
{% endif %} {% endif %}
@ -105,8 +105,8 @@
<div class="clb-docs"> <div class="clb-docs">
{# <a class="cl-btn icon-cal" href="{% url 'account_calendar' %}">{% trans 'календарь' %}</a>#} {# <a class="cl-btn icon-cal" href="{% url 'account_calendar' %}">{% trans 'календарь' %}</a>#}
{# <a class="cl-btn icon-doc" href="/profile/feed/">{% trans 'документы' %}</a>#} {# <a class="cl-btn icon-doc" href="/profile/feed/">{% trans 'документы' %}</a>#}
<a class="" href="{% url 'account_calendar' %}"><i class="fa fa-calendar"></i></a> <a href="{% url 'account_calendar' %}"><i class="fa fa-calendar"></i></a>
<a class="" href="/profile/feed/"><i class="fa fa-file-text-o"></i></a> <a href="/profile/feed/"><i class="fa fa-file-text-o"></i></a>
</div> </div>
<div class="clb-profile"> <div class="clb-profile">

Loading…
Cancel
Save