diff --git a/django.html b/django.html index 441fc03..3fabf5e 100644 --- a/django.html +++ b/django.html @@ -148,7 +148,7 @@ class Product(models.Model): """Product information""" - name = models.CharField(max_length=40) + name = models.CharField('Name', max_length=40) @@ -187,6 +187,9 @@ class ProductForm(ModelForm): class Meta: model = Product + +
O "label" do campo ficará com o valor do primeiro parâmetro + usado no field em ModelForms.
Projeto > App > models.py
+Cada campo pode ser indexado usando a propriedade
+ db_index
.
+
+class Order(models.Model):
+
+ """An order."""
+
+ costumer.models.ForeignKey(User, db_index=True)
+
+
Models podem ter uma classe de "Meta" com informações adicionais:
+ +
+class Order(models.Model):
+
+ """An order."""
+
+ costumer = models.ForeignKey(User, db_index=True)
+ date = models.DateTimeField(auto_now=True)
+
+ class Meta:
+ db_table = 'my_orders'
+ index_together = [
+ ('costumer', 'date')
+ ]
+
+ Projeto > App > models.py
+ +
class Product(models.Model):
"""Product information"""
@@ -342,7 +382,36 @@ class Order(models.Model):
"""An order."""
products = models.ManyToManyField(Product)
-
+
+
+ Não existe relacionamento "one to many" (p.ex., um
+ pedido tem vários ítens de pedido). Para isso,
+ usa-se o ForeignKey
na parte "many".
+
+class Order(models.Model):
+
+ """An order."""
+
+ costumer = models.ForeignKey(Users)
+
+
+class OrderItem(models.Model):
+
+ """An item of an order."""
+
+ order = models.ForeignKey(Order))metro
+ product = models.ForeignKey(Product)
+ quantity = models.PositiveIntegerField()
+
+
+ + Python 2 (todas as versões), deixarão de ser + suportadas em 2020! +
(... que é o nome bonito para coisas tipo if
, for
...)
Antes de mais nada...
- -if [condição]
+>>> def funcao(a, b):
+... def inner(b):
+... return b * 2 if b > 0 else b * -2
+... return inner(a) + b
+
+
+>>> class Outer(object):
+... class Inner(object):
+... def __init__(self):
+... self.value = 1
+... def __init__(self):
+... self.value = Inner()
+
+