Browse Source

Merge branch 'services_app_test_autocomplete' into services_app

Fabs 11 years ago
parent
commit
948c3aed1c

+ 2 - 1
coin/members/admin.py

@@ -3,6 +3,7 @@ from django.contrib import admin
 from coin.members.models import Member, CryptoKey, LdapUser, MembershipFee
 from django import forms
 from coin.members.membershipfee_filter import MembershipFeeFilter
+import autocomplete_light
 
 # class LdapUserAdmin(admin.ModelAdmin):
 #    exclude = ['dn']
@@ -83,7 +84,7 @@ class MemberAdmin(admin.ModelAdmin):
 
 class MembershipFeeAdmin(admin.ModelAdmin):
     list_display = ('member', 'end_date', 'amount')
-
+    form = autocomplete_light.modelform_factory(MembershipFee)
 
 admin.site.register(Member, MemberAdmin)
 admin.site.register(MembershipFee, MembershipFeeAdmin)

+ 11 - 0
coin/members/autocomplete_light_registry.py

@@ -0,0 +1,11 @@
+import autocomplete_light
+from models import Member
+
+# This will generate a PersonAutocomplete class
+autocomplete_light.register(Member,
+    # Just like in ModelAdmin.search_fields
+    search_fields=['^first_name', 'last_name'],
+    # This will actually data-minimum-characters which will set
+    # widget.autocomplete.minimumCharacters.
+    autocomplete_js_attributes={'placeholder': 'Other model name ?',},
+)

+ 1 - 0
coin/settings.py

@@ -141,6 +141,7 @@ INSTALLED_APPS = (
     #'django.contrib.admindocs',
     'south',
     'ldapdb',  # LDAP as database backend
+    'autocomplete_light', #Automagic autocomplete foreingkey form component
     'coin.members',
     'coin.offers'
 )

+ 5 - 0
coin/templates/admin/base_site.html

@@ -1,6 +1,11 @@
 {% extends "admin/base.html" %}
 {% load i18n %}
 
+{% block extrahead %}
+    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.js" type="text/javascript"></script>
+    {% include 'autocomplete_light/static.html' %}
+{% endblock %}
+
 {% block title %}COIN ☺ Admin{% endblock %}
 
 {% block branding %}

+ 9 - 2
coin/urls.py

@@ -1,6 +1,9 @@
 from django.conf.urls import patterns, include, url
-from django.contrib import admin
 
+import autocomplete_light
+autocomplete_light.autodiscover()
+
+from django.contrib import admin
 admin.autodiscover()
 
 urlpatterns = patterns(
@@ -15,5 +18,9 @@ urlpatterns = patterns(
     url(r'^members/', include('coin.members.urls', namespace='members')),
 
     url(r'^admin/', include(admin.site.urls)),
-    #url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
+
+    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
+    
+    url(r'^autocomplete/', include('autocomplete_light.urls')),
+
 )