0

私はDjangoフォームを持っています。フィールドの 1 つ (monitoring_method) は、別のフィールド (database_type) のエントリに基づいて結果をフィルタリングするオートコンプリート ライト ウィジェットを使用します。ユーザーが入力した値を送信前に database_type フィールドに取得する方法はありますか? 私はAJAXでそれを行う方法を知っています(またはそれを理解することができました)が、AJAXをオートコンプリートに組み込む方法がわかりません-そしておそらくこれが私の本当の質問です.

class MonitoringMethodAutocomplete(autocomplete_light.AutocompleteBase):
    autocomplete_js_attributes = {'placeholder': 'Choose a database type to enable monitoring method selection'}

    def choices_for_request(self):
        q = self.request.GET.get('q', '')
        db_type = self.request.POST.get('database_type')
        # if not db_type:
        #     return []
        monitoring_methods = Database.objects.values_list('monitoring_method', flat=True)
        return monitoring_methods.filter(database_type__exact=db_type,
                                         name__icontains=q).distinct()
    def choices_for_values(self):
        return []

編集:だから、私がやろうとしていたことは不可能だと最初は思っていましたが、q変数が似たようなことをしていることに気付きました...では、なぜ機能しないのdb_typeですか?

4

1 に答える 1