/ / JavascriptまたはjQueryはどのようにしてDjangoモデルにアクセスできますか? -django

JavascriptまたはjQueryはどのように私のDjangoモデルにアクセスできますか? - django

Djangoモデルの1つにアクセスする必要があるjQueryがページに少しあります。基本的にはフォームのオートコンプリートであり、データベースで値を検索する必要があります。

Djangoテンプレートに値を取得する方法は理解していますが、Javascriptコードに値を取得するのは混乱を招きます。

これは可能ですか?どうすればそれができますか?

ありがとうございました。

回答:

回答№1は1

このリンクには、必要なものがすべて含まれています。コードは適切に記述されており、理解しやすいです。モデル/テーブルの値を使用して、入力フィールドに自動入力できます。 このリンクから確認してください。

    def get_Datas(request):
if request.is_ajax():
q = request.GET.get("term", "")
Datas = DataModel.objects.filter(short_name__icontains = q )[:20]
results = []
for Data in Datas:
Data_json = {}
Data_json["value"] = Data.short_name
results.append(Data_json)
data = json.dumps(results)
else:
data = "fail"
mimetype = "application/json"
return HttpResponse(data, mimetype)

そして、これをテンプレートで使用します。

    <link rel="stylesheet" href="http://code.jquery.com/ui/1.8.18/themes/base/jquery-ui.css" type="text/css" media="all" />

<div class="ui-widget">
<label for="datas">datas: </label>
<input id="datas">
</div>

そして、スクリプトは次のようになります。

   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript">
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
<script>
$(function() {
$("#datas").autocomplete({
source: "/get_Datas/",
minLength: 1,
});
});
</script>