Django моделирует, пользовательские функции

Длинная история, короткая помещенный

http://IPAddress:port#/videostream.cgi?user=username&pwd=password

в текстовом файле и имени это security.asp и открытый это с vlc.

Касательно

22
задан Oleg Tarasenko 3 September 2009 в 07:56
поделиться

3 ответа

Что вам, вероятно, понадобится, так это настраиваемый менеджер

Из документации django:

        # An example of a custom manager called "objects".

class PersonManager(models.Manager):
    def get_fun_people(self):
        return self.filter(fun=True)

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    fun = models.BooleanField()
    objects = PersonManager()

    def __unicode__(self):
        return u"%s %s" % (self.first_name, self.last_name)

, который затем позволяет вам делать что-то вроде:

>>> p1 = Person(first_name='Bugs', last_name='Bunny', fun=True)
>>> p1.save()
>>> p2 = Person(first_name='Droopy', last_name='Dog', fun=False)
>>> p2.save()
>>> Person.objects.get_fun_people()
[<Person: Bugs Bunny>]
65
ответ дан 29 November 2019 в 03:23
поделиться

Вы можете использовать декоратор staticmethod.

class Article(models.Model):
    title = models.CharField(...)
    isPublished = models.BooleandField()

    @staticmethod
    def get_active():
        return Article.objects.filter(isPublished = 1)
13
ответ дан 29 November 2019 в 03:23
поделиться

Как указано в документах здесь , если вам нужно добавить пользовательские функции на уровне строк к своим объектам, вам необходимо определить пользовательские методы на ваших моделях. Однако, если вам нужны настраиваемые общестабличные функциональные возможности (например, получение всех объектов Article, которые соответствуют определенным условиям), вам необходимо определить настраиваемые методы для менеджеров модели (во многом как aciniglio выше указывает в своем ответе).

13
ответ дан 29 November 2019 в 03:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: