Articles of django modelos

Eliminar objeto relacionado a través de OneToOneField

¿Hay alguna forma inteligente de cómo realizar la eliminación en esta situación? class Bus(models.Model): wheel = OneToOneField(Wheel) class Bike(models.Model): wheel = OneToOneField(Wheel) pedal = OneToOneField(Pedal) class Car(models.Model): wheel = OneToOneField(Wheel) class Wheel(models.Model): somfields car = Car() wheel = Wheel() wheel.save() car.wheel = wheel car.save() car.delete() # I want to delete also wheel (and also all […]

Consulta compleja con Django (publicaciones de todos los amigos)

Soy nuevo en Python y Django, así que ten paciencia conmigo. Tengo los siguientes modelos: class User(models.Model): name = models.CharField(max_length = 50) … class Post(models.Model): userBy = models.ForeignKey(User, related_name=’post_user’) userWall = models.ForeignKey(User, related_name=’receive_user’) timestamp = models.DateTimeField() post = models.TextField() class Friend(models.Model): user1 = models.ForeignKey(User, related_name=’request_user’) user2 = models.ForeignKey(User, related_name=’accept_user’) isApproved = models.BooleanField() class Meta: unique_together […]

Cómo calcular el total de dos campos para cada elemento en el queryset

Supongamos que tengo la siguiente estructura modelo: class SomeModel(Model): base_price = DecimalField(….) commision = DecimalField(….) No quiero almacenar total_price en mi base de datos para la consistencia de los datos y deseo calcularlo como base_price + commision como SomeModel.Objects.all().xxxxxx(total_price=base_price + commision) Así que mi base de datos (Postgresql 9.1) lo calculará y lo devolverá sin […]

UUID como valor por defecto en el modelo Django

He notado el extraño comportamiento del valor predeterminado en el modelo de django. Por ejemplo tenemos un modelo django simple: import uuid … class SiteUser(models.Model): … username = models.CharField(max_length=255, verbose_name=u”Username”) activation_key = models.CharField(max_length=64, verbose_name=u”Activation key”, default=uuid.uuid1()) Cuando creo un nuevo usuario, y después otro como ese: user_a = SiteUser(username=”UserA”) user_a.save() user_b = SiteUser(username=”UserB”) user_b.save() Django […]

Django – Almacena html sin escapar en el modelo

Estoy tratando de almacenar código HTML sin escape dentro de uno de mis modelos de Django para mostrarlo en mi página de inicio. Sin embargo, cuando lo guardo en un TextField, se escapa y termina mostrándose como texto sin formato. ¿Cómo puedo almacenar HTML en bruto en un modelo de Django? ** EDIT ** Parece […]

Herencia del modelo de Django y llaves extranjeras

Básicamente, tengo un modelo donde he creado una superclase que muchas otras clases comparten, y luego cada una de esas clases tiene algunas características únicas que difieren unas de otras. Digamos que la clase A es la superclase, y la clase B, C y D son hijos de esa clase. Tanto la clase B como […]

Django: ¿Campo modelo para almacenar una lista de flotadores?

Quiero almacenar una lista de flotadores de longitud variable en Django. Existe el CommaSeparatedIntegerField, pero ¿hay algo como esto que pueda usar? ¿Sería mejor simplemente implementar mi propio CommaSeparetedFloatField o hay algo que me estoy perdiendo por completo? Gracias.

¿Cómo actualizo los valores en un objeto en Django?

Tengo un objeto modelo en Django. Uno de los métodos en el objeto utiliza el locking a nivel de fila para garantizar que los valores sean precisos, como por ejemplo: class Foo(model.Model): counter = models.IntegerField() @transaction.commit_on_success def increment(self): x = Foo.objects.raw(“SELECT * from fooapp_foo WHERE id = %s FOR UPDATE”, [self.id])[0] x.counter += 1 x.save() […]

Django creando un campo de modelo personalizado.

Estoy tratando de crear un campo personalizado en Django que tome un valor de moneda decimal (ejemplo: £ 1.56) y lo guarde en la base de datos como un entero (ejemplo: 156) para almacenar valores de moneda. Esto es lo que tengo hasta ahora (he puesto a prueba valores fijos) class CurrencyField(models.DecimalField): __metaclass__ = models.SubfieldBase […]

Representando un campo de selección múltiple para los días de semana en un modelo de Django

He estado buscando una forma elegante de representar un campo de días de semana de múltiples selecciones (lunes, martes, miércoles …) en un modelo Django. Inicialmente estaba pensando en ir a un campo de enteros utilizando matemática a nivel de bits, pero no estoy seguro de si este sería el camino a seguir. Este sería […]