Как получить доступ к объекту запроса django в react?
У меня есть несколько приложений в моем проекте Django, но для одного приложения я хотел бы использовать react, поэтому я создал два приложения, одно для apis, а другое для frontend.
Я использовал webpack для объединения django и react.
Теперь я хочу получить доступ к request.user
и user.is_authenticated
в моих компонентах.
Как я могу получить доступ к ним без вызова apis, поскольку я не использую аутентификацию на основе токенов, поэтому я не могу вызывать API.
views.py
def index(request):
return render(request,'index.html')
urls.py
urlpatterns = [
re_path(r'^(?:.*)/?$',index),
]
Я хотел бы использовать is_authenticated в моей боковой панели везде.
Вы можете просто передать запрос user и is_authenticated в контекст представления index и получить доступ к нему в своих компонентах React через объект window.
В вашем файле views.py:
def index(request):
context = {
'user': request.user,
'is_authenticated': request.user.is_authenticated,
}
return render(request, 'index.html', context)
В вашем файле index.html:
<script>
window.user = {{ user|safe }}
window.is_authenticated = {{ is_authenticated|safe }}
</script>