@pydjango

Страница 61 из 1273
Alexander
19.11.2016
12:05:47
если они будут там одновременно выполняться

они будут ждать, пока данная транзакция не отпустит эту строчку

Daniil
19.11.2016
12:06:22
Вопрос: я заметил, что встроенные формы Django для создания пользователя работают только с оригинальной моделью User, а у меня кастомизированная, что мне делать?

.
19.11.2016
12:06:31
exclude = ('some_field')
так это вроде я просто убираю(добавляю) поля

Google
.
19.11.2016
12:09:00
я хочу, чтобы при удалении объекта через админку у меня крутился счетчик

Daniil
19.11.2016
12:09:50
Наследуй от abstractuser
Разве User не наследуется от abstractuser, то есть я получу все методы, что и в abstractuser, в кастомизированной модели?

Все, заметил)

Фейл

Daniil
19.11.2016
12:14:39
Это зачем? Я хочу просто наследоваться от User. Напишу class CustomUser(User): email = models.EmailField('email address', blank=True, unique=True)

И, вроде, еще можно переопределить менеджер objects = UserManager()

Artem
19.11.2016
12:16:34
А, ты вон для каких целей

Daniil
19.11.2016
12:17:06
Ну, меня не устаривает, что мыло неуникальное

Советуют сделать кастомизированную модельку

Заодно добавлю менеджер, чтобы забыть про User

Google
Daniil
19.11.2016
12:19:15
Мне не разрешают переопределить email

Local field 'email' in class 'CustomUser' clashes with field of the same name from base class 'User'.

Делать второе поле с другим именем или есть решение?

Slava
19.11.2016
12:24:14
народ, кто что использует all_auth или django-social-login?

Alexander
19.11.2016
12:27:13
1 удалил ящик, другой потом его зарегистрировал

такое может быть, если свой домен

и, кстати, у 1 пользователя может быть вообще куча ящиков, просто 1 из них основной (и он сам может не помнить, какой именно)

почта или телефон как логин - не лучшая идея

Daniil
19.11.2016
12:30:42
Это для регистрации

Чтобы заполнить данные о пользователе, а логине я еще не беспокоюсь

В чем проблема может быть?

Aleksey
19.11.2016
13:02:33
В базе нету поля username у этой таблицы.

Daniil
19.11.2016
13:03:24
У abstractuser есть это поле, я от него наследовался

Nikita
19.11.2016
13:03:46
А ты в settings указал какую модель использовать для авторизации?

Aleksey
19.11.2016
13:04:02
В CustomUser не указана таблица.

Daniil
19.11.2016
13:04:19
AUTH_USER_MODEL = 'client.CustomUser'

Nikita
19.11.2016
13:04:45
Ну вот с этого и начинаются проблемы)

Daniil
19.11.2016
13:05:02
Google
Nikita
19.11.2016
13:05:11
AbstractUser - абстрактный класс

Nikita
19.11.2016
13:07:17
Зайди в класс джанговского User

Там есть метакласс

Daniil
19.11.2016
13:07:55
Там есть метакласс
Что он делает?

Nikita
19.11.2016
13:08:49
Я пытался разобраться но бросил

Попробуй скопировать в свой класс

Я недавно тоже искал как переопределить поведение User

В итоге наследовался от AbstractBaseUser

arisu
19.11.2016
13:11:55
Разве так не написано в документации?

Что от него и надо

Daniil
19.11.2016
13:12:59
Где? Дайте линк

Ок, а если мне нужны поля, которые в AbstractUser, то мне двойное наследование нужно сделать?

В итоге наследовался от AbstractBaseUser

Разве так не написано в документации?

AbstractBaseUser для полного переопределения модели, а AbstractUser для добавления полей и методов, что там

Nikita
19.11.2016
13:25:38
Да, мне не нужны были поля

Просто при наследовании моделей

Неявно создается связь один к одному

Google
Nikita
19.11.2016
13:26:56
И по идее username у твоей модели должен браться из abstractuser

Но эта модель абстрактная

Ты посмотрел джанговского юзера?

Eldar
19.11.2016
13:28:13
Неявно создается связь один к одному
не ври, это только, если ты модель наследуешь, а для абстрактной модели такого не происходит

Aleksey
19.11.2016
13:28:45
@python_beginners сюда пиши.

Nikita
19.11.2016
13:28:59
Ок)

9Lifesme
19.11.2016
13:51:07
Трям)

Ребята не подскажите, как textaria прикрутить? :(

Daniil
19.11.2016
13:53:56
У тебя есть форма, у формы есть поля, у полей есть атрибуты и свойства, названия атрибутов найдешь и свойств найдешь в документации

9Lifesme
19.11.2016
13:58:56
Спасибо за подсказку)), изучаю инфу)

Daniil
19.11.2016
14:01:14
Не за что?

Alexander
19.11.2016
17:53:23
а как в Django правильнее всего реализовывать ограничения на уровне СУБД (constraints)? например, я хочу добавить CHECK(fk1 IS NULL != fk2 IS NULL)

9Lifesme
19.11.2016
17:54:58
фуууууууууух)

Alexander
19.11.2016
17:55:53
допустим, у меня есть 2 FK и должен быть заполнен только 1 из них, если ни 1 или оба - это ошибка

например, у нас есть модель Account, которая связана с User и Organization, и может быть связана только с кем-то одним из них

я могу это контроллировать в save(), но хочу сделать на уровне СУБД

Eldar
19.11.2016
18:11:17
но сейчас стараются это в бизнес логику перенести, а не в бд писать

Alexander
19.11.2016
18:12:43
а зачем триггер?

CHECK работает отлично тут

Google
Alexander
19.11.2016
18:13:19
Alex
19.11.2016
18:13:40
хм, кто то тут сравнивал Jinja2 с Django темплейтами? http://blog.sendwithus.com/python-templating-performance-showdown-django-vs-jinja/

Alexander
19.11.2016
18:13:41
Django просто управляет базой

а зачем триггер?
http://stackoverflow.com/questions/18409952/trigger-vs-check-constraint

просто раз уж у меня schema разруливает Django, то и CHECK'и тоже в Django нужно как-то описывать)

Alex
19.11.2016
18:15:40
а, так вот, действительно лучше перейти на Jinja2? синтаксис темплейтов у них одинаковый... юзал и то и то. (Jinja2 не в Django проекте был у меня.)

parikLS
19.11.2016
18:15:42
триггеры зло

адское

Alexander
19.11.2016
18:15:45
> хм, кто то тут сравнивал Jinja2 с Django темплейтами? Jinja2 круче)

Eldar
19.11.2016
18:15:46
в БД не только Django может захотеть писать
хм, не подумал, но и в ТЗ это не было указано)

Alexander
19.11.2016
18:16:21
вопрос не в том, как это сделать на стороне СУБД (я знаю), а в том, как это Django лучше всего объяснить

думал, может есть app, который позволяет описывать эти CHECK'и в Meta модели

vadim
19.11.2016
18:34:51
просто интересно для какой задачи это надо (я имею виду реальную задачу, а не 2 FK и давайте их запустим в космос)

Alexander
19.11.2016
18:48:27
счёт, который относится одновременно и к юзеру и к компании - это аномалия

Daniil
19.11.2016
19:52:54
Кто как делает авторизацию, давая выбор заполнения либо юзернейма, либо почты?

Страница 61 из 1273