Пример #1
0
class Example(models.Model):
    mptt = TreeForeignKey(Mptt, on_delete=models.CASCADE)
    treebeardmp = TreeForeignKey(Treebeardmp,
                                 on_delete=models.CASCADE,
                                 settings={
                                     'show_buttons': True,
                                     'filtered': True
                                 })
    treebeardal = TreeForeignKey(Treebeardal,
                                 on_delete=models.CASCADE,
                                 settings={
                                     'search': True,
                                     'dnd': True,
                                     'sort': True
                                 })
    treebeardns = TreeForeignKey(Treebeardns,
                                 on_delete=models.CASCADE,
                                 settings={'dnd': True})
    mptt_many = TreeManyToManyField(Mptt,
                                    related_name='example_many',
                                    settings={
                                        'show_buttons': True,
                                        'search': True,
                                        'dnd': True
                                    })
    treebeardmp_many = TreeManyToManyField(Treebeardmp,
                                           related_name='example_many')
    treebeardal_many = TreeManyToManyField(Treebeardal,
                                           related_name='example_many')
    treebeardns_many = TreeManyToManyField(Treebeardns,
                                           related_name='example_many')
Пример #2
0
class Category(MPTTModel):
    STATUS = (('True', 'True'), ('False', 'False'))
    parent = TreeForeignKey('self',
                            blank=True,
                            null=True,
                            related_name='children',
                            on_delete=models.CASCADE)
    title = models.CharField(max_length=200, verbose_name="title", null=False)
    image = models.ImageField(verbose_name="image", upload_to='category')
    slug = models.SlugField(null=False, unique=True)
    status = models.CharField(max_length=10, choices=STATUS, default=True)
    create_at = models.DateTimeField(auto_now_add=True)
    update_at = models.DateTimeField(auto_now=True)

    class Meta:
        verbose_name = 'Category'
        verbose_name_plural = 'Categories'

    class MTTPMeta:
        order_insertion_by = ['title']

    def __str__(self):
        full_path = [self.title]
        k = self.parent
        while k is not None:
            full_path.append(k.title)
            k = k.parent
        return ' / '.join(full_path[::-1])
Пример #3
0
class Customer(models.Model):
    ip = models.CharField(max_length=50,
                          null=False,
                          blank=False,
                          unique=True,
                          verbose_name="IP")
    hostname = models.CharField(max_length=50,
                                null=False,
                                blank=False,
                                unique=True,
                                verbose_name="Hostname")
    name = models.CharField(max_length=50,
                            null=False,
                            blank=False,
                            verbose_name="Cliente")
    address = models.CharField(max_length=50,
                               null=False,
                               blank=False,
                               verbose_name="Morada")
    # technician_contact = models.CharField(max_length=50, null=False, blank=False, verbose_name="Contacto Técnico")
    equipement = TreeForeignKey(Equipment,
                                on_delete=models.CASCADE,
                                null=True,
                                blank=True,
                                related_name='equipmenet')
    created_at = models.DateTimeField(default=timezone.now)
    updated_at = models.DateTimeField(auto_now=False, blank=True, null=True)

    def __str__(self):
        return self.hostname
Пример #4
0
class Example(models.Model):
    mptt = TreeForeignKey(
        Mptt,
        on_delete=models.CASCADE,
        help_text=
        "default settings: no buttons, no search, not filtered, no drag'n drop, no sort"
    )
    treebeardmp = TreeForeignKey(
        Treebeardmp,
        on_delete=models.CASCADE,
        settings={
            'show_buttons': True,
            'filtered': True
        },
        help_text=
        "settings: show_buttons, filtered (exclude pk=1, see admin.py)")
    treebeardal = TreeForeignKey(
        Treebeardal,
        on_delete=models.CASCADE,
        settings={
            'search': True,
            'dnd': True,
            'sort': True
        },
        help_text="settings: search, drag'n drop, sort")
    treebeardns = TreeForeignKey(Treebeardns,
                                 on_delete=models.CASCADE,
                                 settings={'dnd': True},
                                 help_text="settings: drag'n drop")
    mptt_many = TreeManyToManyField(
        Mptt,
        related_name='example_many',
        settings={
            'show_buttons': True,
            'search': True,
            'dnd': True
        },
        help_text="settings: buttons, search, drag'n drop<br>")
    treebeardmp_many = TreeManyToManyField(Treebeardmp,
                                           related_name='example_many')
    treebeardal_many = TreeManyToManyField(Treebeardal,
                                           related_name='example_many')
    treebeardns_many = TreeManyToManyField(Treebeardns,
                                           related_name='example_many')
Пример #5
0
class Mptt(MPTTModel):
    name = models.CharField(max_length=32)
    parent = TreeForeignKey('self',
                            blank=True,
                            null=True,
                            on_delete=models.CASCADE,
                            settings={'filtered': True})

    def __str__(self):
        return self.name
Пример #6
0
class Mptt(MPTTModel):
    name = models.CharField(max_length=32)
    parent = TreeForeignKey(
        'self',
        blank=True,
        null=True,
        on_delete=models.CASCADE,
        settings={'filtered': True},
        help_text='filtered (exclude pk=1 from parent, see admin.py)')

    def __str__(self):
        return self.name
Пример #7
0
class Equipment(MPTTModel):
    name = models.CharField(max_length=200)
    layout = models.TextField(blank=True)
    parent = TreeForeignKey('self',
                            null=True,
                            blank=True,
                            related_name="children")

    def __str__(self):
        return self.name

    class MPTTMeta:
        order_insertion_by = ['name']
Пример #8
0
class Equipment(MPTTModel):
    name = models.CharField(max_length=50,
                            null=False,
                            blank=False,
                            unique=True)
    layout = models.TextField()
    parent = TreeForeignKey('self',
                            on_delete=models.CASCADE,
                            null=True,
                            blank=True,
                            related_name='children')

    class MPTTMeta:
        order_insertion_by = ['name']

    def __str__(self):
        return self.name
Пример #9
0
class Customer(models.Model):
    name = models.CharField(max_length=200)
    ip = models.GenericIPAddressField()
    hostname = models.CharField(max_length=200)
    address = models.CharField(max_length=200)
    equipment = TreeForeignKey(Equipment, null=True)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

    def save(self, *args, **kwargs):
        if not self.id:
            self.created = timezone.now()
        self.modified = timezone.now()
        print(timezone.now())
        return super(Customer, self).save(*args, **kwargs)

    def get_layout(self):
        return self.equipment.layout
Пример #10
0
class Objetivo(MPTTModel):
    codigo = models.CharField(max_length=50, null=True)
    name = models.CharField(max_length=500)
    createdAt = models.DateTimeField()
    parent = TreeForeignKey('self',
                            on_delete=models.CASCADE,
                            null=True,
                            blank=True,
                            related_name='children')
    tiene_indicador = models.BooleanField()
    id_indicador = models.ForeignKey('Indicador',
                                     on_delete=models.CASCADE,
                                     null=True,
                                     blank=True)
    prefer = models.FloatField(default=1)

    class MPTTMeta:
        order_insertion_by = ['name']

    def __str__(self):
        return self.name
Пример #11
0
class Category(MPTTModel):
    name = models.CharField(max_length=50, unique=True)
    parent = TreeForeignKey('self',
                            null=True,
                            blank=True,
                            related_name='children',
                            db_index=True,
                            on_delete=models.CASCADE)
    slug = models.SlugField()

    class MPTTMeta:
        order_insertion_by = ['name']

    class Meta:
        unique_together = ((
            'parent',
            'slug',
        ))
        verbose_name_plural = 'categories'

    def get_slug_list(self):
        try:
            ancestors = self.get_ancestors(include_self=True)
        except:
            ancestors = []
        else:
            ancestors = [i.slug for i in ancestors]
        slugs = []
        for i in range(len(ancestors)):
            slugs.append('/'.join(ancestors[:i + 1]))
        return slugs

    def __str__(self):
        return self.name

        def get_absolute_url(self):
            return reverse('product:category', kwargs={'slug': self.slug})