Size: a a a

Django [ru] #STAY HOME

2019 November 19

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Nikolay Kiseev
Всем привет. Есть вопрос.
В settings.py джанги определено два подключения к базам данных: default и blog.

Вопрос: как сказать приложениям в проекте использовать базу blog?

В своих моделях это сделать не проблема. А вот как быть со стороними приложениями которые устанавливаются в проект для использования. Например taggit. Как этому приложению сказать, чтоб он использовал базу (подключение) blog?

Буду рад примеру кода и ссылке где это показано.

Спасибо.
Кто-то сможет помочь с этим вопросом?
источник

S

Steady in Django [ru] #STAY HOME
Сразу извините за вопрос от чайника. Хочу создать проект. Ввожу в консоль django-admin startproject django_example.

А мне выбивает CommandError: 'django_example.' is not a valid project name. Please make sure th
e name is a valid identifier.

Что не так?
источник

Т

Тимур in Django [ru] #STAY HOME
Steady
Сразу извините за вопрос от чайника. Хочу создать проект. Ввожу в консоль django-admin startproject django_example.

А мне выбивает CommandError: 'django_example.' is not a valid project name. Please make sure th
e name is a valid identifier.

Что не так?
не юзай слово джанго и тд в названиях
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Steady
Сразу извините за вопрос от чайника. Хочу создать проект. Ввожу в консоль django-admin startproject django_example.

А мне выбивает CommandError: 'django_example.' is not a valid project name. Please make sure th
e name is a valid identifier.

Что не так?
точку убери после django_example
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Тимур
не юзай слово джанго и тд в названиях
почему?
источник

Т

Тимур in Django [ru] #STAY HOME
Pavel Zagrebelin
почему?
конфликт имен же может быть
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Nikolay Kiseev
Всем привет. Есть вопрос.
В settings.py джанги определено два подключения к базам данных: default и blog.

Вопрос: как сказать приложениям в проекте использовать базу blog?

В своих моделях это сделать не проблема. А вот как быть со стороними приложениями которые устанавливаются в проект для использования. Например taggit. Как этому приложению сказать, чтоб он использовал базу (подключение) blog?

Буду рад примеру кода и ссылке где это показано.

Спасибо.
>Буду рад примеру кода и ссылке где это показано.

как всегда, в документации. AuthRouter -  твой кейс.
https://docs.djangoproject.com/en/2.2/topics/db/multi-db/#an-example
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Тимур
конфликт имен же может быть
юзать в своих проектах названия, которые есть (и планируются к использованию) на pypi -- вот путь к конфликтам. А не просто "django_my_first_site"
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Pavel Zagrebelin
>Буду рад примеру кода и ссылке где это показано.

как всегда, в документации. AuthRouter -  твой кейс.
https://docs.djangoproject.com/en/2.2/topics/db/multi-db/#an-example
Я этот пример видел, но не совсем понимаю как сказать сторонему приложению юзать не дефолтную базу.
Ещё раз скажу, для своих моделей я это уже применил и всё работает ОК.
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Nikolay Kiseev
Я этот пример видел, но не совсем понимаю как сказать сторонему приложению юзать не дефолтную базу.
Ещё раз скажу, для своих моделей я это уже применил и всё работает ОК.
Это не так работает. Это ты джанге говоришь: вот роутер, он знает, как рулить в базы. А джанга сама скажет сторонним приложениям: чувак, мне роутер сказал, что тебе надо в базу А.
источник

S

Steady in Django [ru] #STAY HOME
Pavel Zagrebelin
точку убери после django_example
Огромное спасибо!
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Pavel Zagrebelin
Это не так работает. Это ты джанге говоришь: вот роутер, он знает, как рулить в базы. А джанга сама скажет сторонним приложениям: чувак, мне роутер сказал, что тебе надо в базу А.
Ок. Как сказать Djange использовать для tagget базу blog что у меня определена в settings.py ?
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Nikolay Kiseev
Ок. Как сказать Djange использовать для tagget базу blog что у меня определена в settings.py ?
По моей ссылке ходил?
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Ага. Но не нашёл там что мне может помочь.
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Там целый раздел, нажыватся "Automatic database routing"
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Nikolay Kiseev
Ага. Но не нашёл там что мне может помочь.
AuthRouter видел код? Замени auth на tagget, а auth_db - на blog
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Ок. Попробую ещё раз посмотреть.
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
Спасибо за подсказку. Буду пробовать.
источник

NK

Nikolay Kiseev in Django [ru] #STAY HOME
🤝
источник

S

Strongman in Django [ru] #STAY HOME
решил свою проблему
источник