1

I have followed the installation guide for django-ajax-selects at this url, and still, nothing happens : when I type something into the rendered field, nothing is displayed, to POST request are sent, etc.. Because this package was made for the admin, I must be missing something in my out-of-admin form.

私は次のことをしました:

設定.py

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'fr',
    ...
    'ajax_select', # pip install django-ajax-selects
)

lookups.py (「fr」アプリ フォルダーの下)

from ajax_select import register, LookupChannel
from fr.models.generalModels import City

@register('city')
class CityLookup(LookupChannel):

    model = City

    def get_query(self, q, request):
        return self.model.objects.filter(full_name__icontains=q)

    def format_item_display(self, item):
        return u"<span class='tag'>%s</span>" % item.full_name

フォーム.py

class JobOfferForm(forms.ModelForm):
    city = AutoCompleteSelectField('city')
    class Meta:
        model = JobOffer

template.html

<script src="{% static 'ajax_select/js/bootstrap.js' %}"></script>
<script src="{% static 'ajax_select/js/ajax_select.js' %}"></script>
<link rel="stylesheet" type="text/css" href="{% static 'ajax_select/css/ajax_select.css' %}">
...
<form class="center-align card-panel" enctype="multipart/form-data" id="JobOfferForm" action="" method="POST">
    {% csrf_token %}
    {{ jobOfferForm.city }}
    {{ jobOfferForm.meta }}
</form>
...

私は何を間違っていますか?

編集:bootstrap.jsファイルとcssファイル、およびform.metaを見逃したようです(ただし、この最後のファイルが何かを行うかどうかはわかりません)。
コンソールに Forbidden (403) エラーが表示されます。フォームにあるにもかかわらず、ajaxリクエストにcrsf_tokenがないためだと確信しています。

4

2 に答える 2

3

追加

{{ form.media }} 

あなたの問題を解決します。

http://django-ajax-selects.readthedocs.io/en/latest/Outside-of-Admin.html

于 2016-10-29T17:07:33.610 に答える