試みたことがないのですが、パッと思いつくレベルで提案するなら、beautifulsoupというライブラリで強引にHTMLを取得し、特定のキーワードなどから変数の中身に当たる部分を拾うくらいしか思いつきませんでした。
ちなみに、htmlで使用している変数というのはタグで指定しているものでしょうか、それともHTMLといいつつJavascriptで定義した変数でしょうか。もとになるHTMLも記載があると、他の人の回答を引き出せるかもしれません…
Like!
djangoでフィルタ機能を作るために下記のコードを記述したのですが、
htmlで使用している変数をviews.pyの bbb という変数に代入したいのですが
どのようにすればよろしいでしょうか。
from django.shortcuts import render
from shop.models import Product, Detail
from django.core.paginator import Paginator, EmptyPage, InvalidPage
from django.db.models import Q
def Detail_detail(request, detail_slug):
try:
product = Detail.objects.get(slug=detail_slug)
except Exception as e:
raise e
bbb = request.GET.get('bbb', '')
aaa = "subtag__name__contains"
detail = Detail.objects.filter(**{aaa : bbb})
data = {'product': product,
'detail': detail,
}
return render(request, 'shop/product_detail.html', data)
試みたことがないのですが、パッと思いつくレベルで提案するなら、beautifulsoupというライブラリで強引にHTMLを取得し、特定のキーワードなどから変数の中身に当たる部分を拾うくらいしか思いつきませんでした。
ちなみに、htmlで使用している変数というのはタグで指定しているものでしょうか、それともHTMLといいつつJavascriptで定義した変数でしょうか。もとになるHTMLも記載があると、他の人の回答を引き出せるかもしれません…
HTMLで使用している変数というのは、どういう意味でしょうか?
何をやりたいとのか、いまいち掴めず、関係する部分の記載(テンプレートとか?)もあれば、お力になれるかもしれません。
質問文のコード見る限りでは、URLパラメータ (例:http://example.com/index?bbb=1の「bbb=1」の部分)で指定したパラメータを取得して、Detail_detail メソッド内でbbbという変数に代入してますが、やりたいこととあってますか?
外部から指定したbbbの値でフィルターをかけること自体はできそうですが