Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16

Генерация slug django из DateTimefield

26.02.2019, 10:57. Показов 2512. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможна генерация slug django из DateTimefield?

Есть класс

Кликните здесь для просмотра всего текста
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
class lead(models.Model):
    '''
    kanban - статус, данные записываются в таблицу kanban
    user - невидимое поле в которое записывать какой пользователь внес данные
    client - из юзерс - выбираем "клиента", с заранее указанным типом - клиент
    date - конвертируется в
    '''
    created = models.DateTimeField(auto_now_add=True, db_index=True, editable=False, null=False, blank=False)
    slug = models.SlugField(max_length=50, allow_unicode=True)
    # slug = models.SlugField(max_length=60, unique=True)
    kanban = models.ForeignKey('kanban_type', on_delete=models.CASCADE)
    date_work = models.DateTimeField(blank=True, verbose_name="Дата исполнения")
    # client = models.ForeignKey(
    #     client,
    #     verbose_name="Ответственный",
    #     blank=True,
    #     null=True,
    #     on_delete=models.SET_NULL
    # )
    # responsible = models.ForeignKey(
    #     worker,
    #     verbose_name="Ответственный",
    #     blank=True,
    #     null=True,
    #     on_delete=models.SET_NULL
    # )
    price = models.CharField(max_length=15, verbose_name='Цена заявки')
    descr = models.CharField(blank=True, max_length=300, verbose_name='Описание')
    expenses = models.ManyToManyField('expenses', blank=True, verbose_name='Затраты')
    invoices = models.ManyToManyField('invoices', blank=True, verbose_name='Приход')
    saldo = models.CharField(max_length=100, blank=True, verbose_name='Сальдо')
    # created_by = models.ForeignKey(
    #     User,
    #     null=False,
    #     blank=False,
    #     editable=False,
    #     auto_created=True
    # )
 
    def __str__(self):
        return self.text
 
    class Meta:
        verbose_name = 'Заявка'
        verbose_name_plural = 'Заявки'
 
    def save(self, *args, **kwargs):
        self.expenses.сумма_всех = self.expenses
        self.invoices.сумма_всех = self.invoices
        self.saldo = self.invoices - self.expenses
        self.saldo.save()
        super(saldo, self).save(*args, **kwargs)



где slug надо генерировать так, чтобы он стал и категориями для работы, например

Python
1
2
3
4
5
6
7
8
9
10
from django.urls import path
 
from . import views
 
urlpatterns = [
    path('articles/2003/', views.special_case_2003),
    path('articles/<int:year>/', views.year_archive),
    path('articles/<int:year>/<int:month>/', views.month_archive),
    path('articles/<int:year>/<int:month>/<slug:slug>/', views.article_detail),
]

https://docs.djangoproject.com... http/urls/

Но там про работу с классом модели (как сделать, чтобы урл задавался автоматически) не нашел
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.02.2019, 10:57
Ответы с готовыми решениями:

Авто генерация юниттестов для Django
Для автоматической генерации юниттестов для простого пайтон кода существует pythoscope. Есть ли подобная штука и для Django? Или...

Не видит slug
что ему не нравиться? миграции сделаны. на скриншоте пишет что Объект 'Product' не имеет атрибута 'slug' хотя в код я его добавил. ...

slug url и русские буквы
Хотел сделать так в модели переопределил метод def to_param &quot;#{id}-#{title}&quot; end И всё бы не чего, если бы не русские...

3
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
26.02.2019, 14:07
Лучший ответ Сообщение было отмечено Рыжий Лис как решение

Решение

Сигнал pre_save + функция генерации слага (совет - проверяйте на уникальность).
2
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
27.02.2019, 18:54
IRIP, попробуй prepopulated_fields. Не знаю, заработает ли он c DataTimeField, но с цифрами, буквами он работает очень легко.
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
28.02.2019, 08:42
Помимо сигнала pre_save можно ещё у модели переопределить метод save (только не забыть вызвать в конце оригинальный метод у родителя).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.02.2019, 08:42
Помогаю со студенческими работами здесь

Register_post_type и register_taxonomy с одинаковым slug
Здравствуйте. Столкнулся с проблемой на которую не могу пока найти ответа. Я Регистрирую новую таксономию и пост тайп: ...

Получить slug атрибута в заказ
Здравствуйте! В woocommerce при заказе формируется письмо, данные для письма (Название продукта, цена, количество и тд) берется из $orders....

Slug обрезается при добавлении
Здравствуйте, нужна помощь. При добавлении в бд формирую slug из title следующий образом: 'slug' =&gt;...

Woocommerce получить slug атрибута
Здравствуйте! Как получить slug атрибута выбранной вариации?

Удалить slug c custom post в Вордпресс
Структура моих ссылок в настройках вордпресс: %category%/%postname%/ Я хочу удалить slug из custom post, и я нашел следующее решение ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru