from django.db import models
+from django.contrib.auth.models import User
+import datetime
+from django.core.urlresolvers import reverse
+from django.template.defaultfilters import slugify
-# Create your models here.
+
+class Ingredient(models.Model):
+ name = models.CharField(max_length=100)
+ slug = models.SlugField()
+
+ def __unicode__(self):
+ return self.name
+
+
+class Sandwich(models.Model):
+ adjective = models.CharField(max_length=200)
+ slug = models.SlugField()
+ date_made = models.DateField()
+ ingredients = models.ManyToManyField(Ingredient)
+ date_added = models.DateTimeField(default=datetime.datetime.now, editable=False)
+ picture = models.ImageField(upload_to='sandwiches/')
+ notes = models.TextField()
+ user = models.ForeignKey(User)
+
+ class Meta:
+ ordering = ['date_added']
+ verbose_name_plural = "Sandwiches"
+
+ def __unicode__(self):
+ return self.adjective
+
+ def get_absolute_url(self):
+ return reverse('sandwich_by_slug', kwargs={'slug':self.slug})
+
+ def save(self, *args, **kwargs):
+ self.slug = slugify(self.adjective)
+ super(Sandwich, self).save(*args, **kwargs)