Size: a a a

Django [ru] #STAY HOME

2020 January 09

D

Developer in Django [ru] #STAY HOME
Всем привет,  делаю сброс пароля {% extends 'base.html' %}
{% load crispy_forms_tags %}

{% block main %}
<div class="card">
   <div class="card-body">
       <h4 class="card-title">Reset your password</h4>
       <form method="post">
           {% csrf_token %}
           <input type="hidden" name="next" value="{{ next }}">
           {{ form|crispy }}
           <button type="submit" class="btn btn-primary btn-block">Reset</button>
       </form>
   </div>
</div>
</div>
{% endblock %}   но странно почеу не отображается бутсрап форма, а просто в стиле как обычная админ панель
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Developer
Всем привет,  делаю сброс пароля {% extends 'base.html' %}
{% load crispy_forms_tags %}

{% block main %}
<div class="card">
   <div class="card-body">
       <h4 class="card-title">Reset your password</h4>
       <form method="post">
           {% csrf_token %}
           <input type="hidden" name="next" value="{{ next }}">
           {{ form|crispy }}
           <button type="submit" class="btn btn-primary btn-block">Reset</button>
       </form>
   </div>
</div>
</div>
{% endblock %}   но странно почеу не отображается бутсрап форма, а просто в стиле как обычная админ панель
На скриншоте не видно фразы "Reset your password" => с шаблонами какая-то проблема, не этот шаблон рендерится
источник

D

Developer in Django [ru] #STAY HOME
хм старанно)
источник

D

Developer in Django [ru] #STAY HOME
Не могут понять в чем дело)
источник

b

brestows in Django [ru] #STAY HOME
Подскажите как мне получить пользовательскую модель ?  
что бы отфильтровать кое какие данные )
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
brestows
Подскажите как мне получить пользовательскую модель ?  
что бы отфильтровать кое какие данные )
from django.contrib.auth import get_user_model
get_user_model().objects.filter(...)
источник

b

brestows in Django [ru] #STAY HOME
Artem Gubatenko
from django.contrib.auth import get_user_model
get_user_model().objects.filter(...)
хм
источник

b

brestows in Django [ru] #STAY HOME
читал что нельзя такое юзать
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Developer
Всем привет,  делаю сброс пароля {% extends 'base.html' %}
{% load crispy_forms_tags %}

{% block main %}
<div class="card">
   <div class="card-body">
       <h4 class="card-title">Reset your password</h4>
       <form method="post">
           {% csrf_token %}
           <input type="hidden" name="next" value="{{ next }}">
           {{ form|crispy }}
           <button type="submit" class="btn btn-primary btn-block">Reset</button>
       </form>
   </div>
</div>
</div>
{% endblock %}   но странно почеу не отображается бутсрап форма, а просто в стиле как обычная админ панель
тебя не устраивает стандартный функционал сброса пароля в админке?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
brestows
читал что нельзя такое юзать
где? и почему?
источник

D

Developer in Django [ru] #STAY HOME
Artem Gubatenko
тебя не устраивает стандартный функционал сброса пароля в админке?
нет, но самое интересное что форма входа рендерится нормально
источник

b

brestows in Django [ru] #STAY HOME
Artem Gubatenko
где? и почему?
Я могу путать, но вроде как get_user_model не гарантирует что модель загружена
источник

b

brestows in Django [ru] #STAY HOME
но я могу чегото путать )
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
brestows
читал что нельзя такое юзать
не хочешь так, тогда:

from django.conf import settings

UserModel = settings.AUTH_USER_MODEL

это аналог, но не всегда подходит

или:
from django.apps import apps

UserModel = apps.get_model('<your_app_name>.User')
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
apps.get_model() удобно когда нужно, например во вьюхе, получить модель в зависимости от запроса)
источник

b

brestows in Django [ru] #STAY HOME
Artem Gubatenko
не хочешь так, тогда:

from django.conf import settings

UserModel = settings.AUTH_USER_MODEL

это аналог, но не всегда подходит

или:
from django.apps import apps

UserModel = apps.get_model('<your_app_name>.User')
Спасибо. А как можно в форме админки узнать что в поле изменилось значение, что бы переинициализировать данные в другом поле ?
источник

b

brestows in Django [ru] #STAY HOME
Artem Gubatenko
apps.get_model() удобно когда нужно, например во вьюхе, получить модель в зависимости от запроса)
Я пометил это себе )
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Artem Gubatenko
не хочешь так, тогда:

from django.conf import settings

UserModel = settings.AUTH_USER_MODEL

это аналог, но не всегда подходит

или:
from django.apps import apps

UserModel = apps.get_model('<your_app_name>.User')
последняя строка - это фактически копипаст из get_user_model  :)
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
brestows
Спасибо. А как можно в форме админки узнать что в поле изменилось значение, что бы переинициализировать данные в другом поле ?
подать в форму initial данные и сравнить в clean() методе с данными в cleaned_data
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Pavel Zagrebelin
последняя строка - это фактически копипаст из get_user_model  :)
ну, раз использовать get_user_model() не хочет, то будет юзать почти тоже самое, но с другим названием))
источник