Last active
November 24, 2015 14:01
-
-
Save gagarine/6a4055e01a12ce689db8 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import datetime | |
from django.db import models | |
from django.utils import timezone | |
from django.core.urlresolvers import reverse | |
# Create your models here. | |
class Asset(models.Model): | |
title_text = models.CharField(max_length=200) | |
created_at = models.DateTimeField(auto_now_add=True) | |
updated_at = models.DateTimeField(auto_now=True) | |
pub_date = models.DateTimeField('date published') | |
main_image = models.ImageField(upload_to='asset_main_image') | |
def get_absolute_url(self): | |
return reverse('app:asset-detail', kwargs={'pk': self.pk}) | |
class AssetImage(models.Model): | |
asset = models.ForeignKey(Asset,related_name='images') | |
created_at = models.DateTimeField(auto_now_add=True) | |
updated_at = models.DateTimeField(auto_now=True) | |
image = models.ImageField(upload_to='asset_image') | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from django.shortcuts import get_object_or_404, render | |
from django.http import HttpResponseRedirect | |
from django.core.urlresolvers import reverse | |
from django.views import generic | |
from django.core.urlresolvers import reverse_lazy | |
from .models import Asset | |
from .models import AssetImage | |
# Create your views here. | |
class IndexView(generic.ListView): | |
template_name = 'asset/asset_list.html' | |
context_object_name = 'latest_asset_list' | |
def get_queryset(self): | |
"""Return the last five published asset.""" | |
return Asset.objects.order_by('-pub_date')[:5] | |
class Detail(generic.DetailView): | |
model = Asset | |
context_object_name = 'asset' | |
template_name = 'asset/asset_detail.html' | |
class AssetCreate(generic.CreateView): | |
model = Asset | |
template_name = 'asset/asset_create.html' | |
fields = ['title_text', 'main_image'] | |
class AssetUpdate(generic.UpdateView): | |
model = Asset | |
template_name = 'asset/asset_form.html' | |
fields = ['title_text', 'main_image', 'images'] | |
class AssetDelete(generic.DeleteView): | |
model = Asset | |
success_url = reverse_lazy('app:asset-list') |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment