* [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/
@ 2012-06-03 13:19 Slava Bacherikov
0 siblings, 0 replies; 5+ messages in thread
From: Slava Bacherikov @ 2012-06-03 13:19 UTC (permalink / raw
To: gentoo-commits
commit: ecd91f1a1a2b4a48079b28b17c8bf01a370142d6
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
AuthorDate: Sat Jun 2 21:33:49 2012 +0000
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
CommitDate: Sat Jun 2 21:33:49 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=ecd91f1a
Add HerdsModel and MaintainerModel to databrowse and admin.
---
gpackages/apps/packages/admin.py | 2 +-
gpackages/main/urls.py | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/gpackages/apps/packages/admin.py b/gpackages/apps/packages/admin.py
index 5773ce4..08df2c5 100644
--- a/gpackages/apps/packages/admin.py
+++ b/gpackages/apps/packages/admin.py
@@ -1,6 +1,6 @@
from django.contrib import admin
from models import EbuildModel, PackageModel, LicensModel, CategoryModel, \
- UseFlagModel, RepositoryModel, HomepageModel
+ UseFlagModel, RepositoryModel, HomepageModel, HerdsModel, MaintainerModel
admin.site.register(EbuildModel)
admin.site.register(PackageModel)
diff --git a/gpackages/main/urls.py b/gpackages/main/urls.py
index aa0b806..8dcc4a5 100644
--- a/gpackages/main/urls.py
+++ b/gpackages/main/urls.py
@@ -16,9 +16,9 @@ urlpatterns = patterns('',
)
if DEBUG:
- from packages.models import EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel
+ from packages.models import EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel
from django.contrib import databrowse
- databrowse.site.register(EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel)
+ databrowse.site.register(EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel)
urlpatterns += (
url(r'^data/(.*)',databrowse.site.root),
)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/
@ 2012-06-04 20:09 Slava Bacherikov
0 siblings, 0 replies; 5+ messages in thread
From: Slava Bacherikov @ 2012-06-04 20:09 UTC (permalink / raw
To: gentoo-commits
commit: f6e57995151830ada2489d4949cf5d13da36b8b0
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
AuthorDate: Mon Jun 4 19:43:51 2012 +0000
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
CommitDate: Mon Jun 4 19:43:51 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=f6e57995
Changes in model
---
gpackages/apps/packages/models.py | 40 ++++++++++++++++++++++++++++++++++++-
gpackages/main/urls.py | 4 +-
2 files changed, 41 insertions(+), 3 deletions(-)
diff --git a/gpackages/apps/packages/models.py b/gpackages/apps/packages/models.py
index 81ac823..fbf2e15 100644
--- a/gpackages/apps/packages/models.py
+++ b/gpackages/apps/packages/models.py
@@ -143,6 +143,10 @@ class PackageModel(models.Model):
objects = managers.PackageManager()
def __unicode__(self):
+ return self.cp
+
+ @property
+ def cp(self):
return '%s/%s' % (self.category, self.name)
def init_by_package(self, package, category = None):
@@ -153,6 +157,11 @@ class PackageModel(models.Model):
elif isinstance(category, CategoryModel):
self.category = category
+ def check_or_need_update(self, package):
+ # Need add metadata check to
+ return not( self.changelog_hash == package.changelog_sha1 and \
+ self.manifest_hash == package.manifest_sha1)
+
def update_info(self, package):
self.mtime = package.mtime
self.changelog_mtime = package.changelog_mtime
@@ -171,6 +180,20 @@ class UseFlagModel(models.Model):
def __unicode__(self):
return self.name
+class UseFlagDescriptionModel(models.Model):
+ use_flag = models.ForeignKey(UseFlagModel)
+ package = models.ForeignKey(PackageModel)
+ description = models.TextField()
+
+ def check_or_need_update(self, description):
+ return self.description != description
+
+ def __unicode__(self):
+ return unicode(self.use_flag)
+
+ class Meta:
+ unique_together = ('use_flag', 'package')
+
class LicensModel(models.Model):
name = models.CharField(unique = True, max_length = 60)
#description = TextField()
@@ -214,7 +237,7 @@ class EbuildModel(models.Model):
self.init_with_keywords(ebuild)
def __unicode__(self):
- return '%s-%s%s' % (self.package, self.version, ('-'+ self.revision if self.revision else ''))
+ return self.cpv
def init_by_ebuild(self, ebuild):
self.is_masked = ebuild.is_masked
@@ -226,6 +249,9 @@ class EbuildModel(models.Model):
#self.homepage = ebuild.homepage
self.description = ebuild.description
+ def check_or_need_update(self, ebuild):
+ return not(self.ebuild_hash == ebuild.sha1)
+
def init_related(self, ebuild, package = None):
self.init_by_ebuild(ebuild)
if package is None:
@@ -260,6 +286,18 @@ class EbuildModel(models.Model):
l.append(ko)
self.keyword_set.add(*l)
+ @property
+ def cp(self):
+ return self.package.cp
+
+ @property
+ def cpv(self):
+ return '%s-%s' % (self.package, self.fullversion)
+
+ @property
+ def fullversion(self):
+ return '%s%s' % (self.version, ('-'+ self.revision if self.revision else ''))
+
class Meta:
unique_together = ('package', 'version', 'revision')
diff --git a/gpackages/main/urls.py b/gpackages/main/urls.py
index 8dcc4a5..ff701b6 100644
--- a/gpackages/main/urls.py
+++ b/gpackages/main/urls.py
@@ -16,9 +16,9 @@ urlpatterns = patterns('',
)
if DEBUG:
- from packages.models import EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel
+ from packages.models import EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel, UseFlagDescriptionModel
from django.contrib import databrowse
- databrowse.site.register(EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel)
+ databrowse.site.register(EbuildModel, PackageModel, UseFlagModel, LicensModel, CategoryModel, Keyword, ArchesModel, HomepageModel, HerdsModel, MaintainerModel, UseFlagDescriptionModel)
urlpatterns += (
url(r'^data/(.*)',databrowse.site.root),
)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/
@ 2012-06-12 18:34 Slava Bacherikov
0 siblings, 0 replies; 5+ messages in thread
From: Slava Bacherikov @ 2012-06-12 18:34 UTC (permalink / raw
To: gentoo-commits
commit: 83f469c74743e5d0be5af88299aea6f3b2fb3dde
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
AuthorDate: Mon Jun 11 23:23:12 2012 +0000
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
CommitDate: Mon Jun 11 23:23:12 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=83f469c7
Normalize database, add VirtualPackageModel
---
gpackages/apps/packages/admin.py | 10 ++++++-
gpackages/apps/packages/managers.py | 20 ++++++++++++---
gpackages/apps/packages/models.py | 45 +++++++++++++++++++++++-----------
gpackages/main/urls.py | 9 ++++---
4 files changed, 59 insertions(+), 25 deletions(-)
diff --git a/gpackages/apps/packages/admin.py b/gpackages/apps/packages/admin.py
index a316c72..42b854b 100644
--- a/gpackages/apps/packages/admin.py
+++ b/gpackages/apps/packages/admin.py
@@ -1,8 +1,9 @@
from django.contrib import admin
from django.db.models import Count
from models import EbuildModel, PackageModel, LicensModel, CategoryModel, \
- UseFlagModel, RepositoryModel, HomepageModel, HerdsModel, \
- MaintainerModel, Keyword, ArchesModel, UseFlagDescriptionModel
+ UseFlagModel, RepositoryModel, HomepageModel, MaintainerModel, \
+ Keyword, ArchesModel, UseFlagDescriptionModel, HerdsModel, \
+ VirtualPackageModel
class AbstractAnnotateAdmin(object):
annotate_dict = {}
@@ -38,6 +39,10 @@ class EbuildAdmin(admin.ModelAdmin):
list_select_related = True
inlines = (KeywordAdmin,)
+class VirtualPackageAdmin(admin.ModelAdmin):
+ list_display = ('__unicode__',)
+ search_fields = ('name',)
+
class PackageAdmin(EbuildsCountAdmin, admin.ModelAdmin):
list_display = ('__unicode__', 'ebuilds_count')
list_filter = ('created_datetime', 'updated_datetime', 'herds')
@@ -69,6 +74,7 @@ class LicensAdmin(EbuildsCountAdmin, admin.ModelAdmin):
admin.site.register(EbuildModel, EbuildAdmin)
+admin.site.register(VirtualPackageModel, VirtualPackageAdmin)
admin.site.register(PackageModel, PackageAdmin)
admin.site.register(LicensModel, LicensAdmin)
admin.site.register(CategoryModel)
diff --git a/gpackages/apps/packages/managers.py b/gpackages/apps/packages/managers.py
index 5ef2ed6..2ca2dc8 100644
--- a/gpackages/apps/packages/managers.py
+++ b/gpackages/apps/packages/managers.py
@@ -23,11 +23,11 @@ def _gen_all_query_and_manager(mixin_name, name_for_query, name_for_manager, *ar
globals()[q_name], globals()[m_name] = q, m
-class PackageMixin(object):#{{{
+class PackageMixin(object):
def get(self, package = None, *args, **kwargs):
if package is not None and isinstance(package, Package):
if 'category' not in kwargs:
- kwargs.update({'category__category' : package.category})
+ kwargs.update({'category' : package.category})
name = package.name
if len(args)>=1:
args[0] = name
@@ -38,8 +38,20 @@ class PackageMixin(object):#{{{
elif package is not None:
# Bad code !!
category, name = package.split('/')
- kwargs.update({'name': name, 'category__category': category})
- return super(PackageMixin, self).get(*args, **kwargs)#}}}
+ kwargs.update({'name': name, 'category': category})
+ return super(PackageMixin, self).get(*args, **kwargs)
+
+ def filter(self, **kwargs):
+ category, name = get_from_kwargs_and_del(('category','name'), kwargs)
+ if name is not None:
+ kwargs.update({'virtual_package__name': name})
+ if category is not None:
+ if isinstance(category, packages.models.CategoryModel):
+ kwargs.update({'virtual_package__category': category})
+ else:
+ kwargs.update({'virtual_package__category__category': category})
+
+ return super(PackageMixin, self).filter(**kwargs)
class KeywordMixin(object):#{{{
diff --git a/gpackages/apps/packages/models.py b/gpackages/apps/packages/models.py
index b2170f1..e9a43b4 100644
--- a/gpackages/apps/packages/models.py
+++ b/gpackages/apps/packages/models.py
@@ -96,18 +96,31 @@ class HerdsModel(AbstractDateTimeModel):
def __unicode__(self):
return self.name
+class VirtualPackageModel(models.Model):
+ name = models.CharField(max_length = 254)
+ category = models.ForeignKey(CategoryModel)
+
+ @property
+ def cp(self):
+ return "%s/%s" % (unicode(self.category), self.name)
+
+ def __unicode__(self):
+ return unicode(self.cp)
+
+ class Meta:
+ unique_together = ('name', 'category')
+
class PackageModel(AbstractDateTimeModel):
def __init__(self, *args, **kwargs):
- package_object = get_from_kwargs_and_del('package', kwargs)
+ package_object, category = \
+ get_from_kwargs_and_del(('package','category' ), kwargs)
super(PackageModel, self).__init__(*args, **kwargs)
if isinstance(package_object, Package):
- self.init_by_package(package_object, category = kwargs.get('category'))
+ self.init_by_package(package_object, category = category)
-
- name = models.CharField(max_length = 254)
- category = models.ForeignKey(CategoryModel)
+ virtual_package = models.ForeignKey(VirtualPackageModel)
changelog = models.TextField(blank = True, null = True)
changelog_hash = models.CharField(max_length = 128)
manifest_hash = models.CharField(max_length = 128)
@@ -130,14 +143,18 @@ class PackageModel(AbstractDateTimeModel):
@property
def cp(self):
- return "%s/%s" % (unicode(self.category), self.name)
-
- def init_by_package(self, package, category = None):
- self.name = package.name
+ return self.virtual_package.cp
+
+ def init_by_package(self, package, category = None, virtual_package = None):
+ #self.name = package.name
self.update_info(package)
- if category is None:
- self.category, created = CategoryModel \
- .objects.get_or_create(category = package.category)
+ if virtual_package is None:
+ if category is None:
+ category, created = CategoryModel \
+ .objects.get_or_create(category = package.category)
+ self.virtual_package, created = VirtualPackageModel.objects \
+ .get_or_create(name = package.name, category = category)
+
elif isinstance(category, CategoryModel):
self.category = category
@@ -163,7 +180,7 @@ class PackageModel(AbstractDateTimeModel):
self.description = package.description
class Meta:
- unique_together = ('name', 'category', 'repository')
+ unique_together = ('virtual_package', 'repository')
class UseFlagModel(models.Model):
name = models.CharField(unique = True, max_length = 60)
@@ -211,7 +228,6 @@ class EbuildModel(AbstractDateTimeModel):
#eapi = models.PositiveSmallIntegerField(default = 0)
#slot = models.PositiveSmallIntegerField(default = 0)
-
objects = managers.EbuildManager()
@@ -290,7 +306,6 @@ class EbuildModel(AbstractDateTimeModel):
unique_together = ('package', 'version', 'revision')
-
class Keyword(models.Model):
STATUS_CHOICES = (
(0, 'STABLE'),
diff --git a/gpackages/main/urls.py b/gpackages/main/urls.py
index ad74f35..b40d000 100644
--- a/gpackages/main/urls.py
+++ b/gpackages/main/urls.py
@@ -21,12 +21,13 @@ if DEBUG:
LicensModel, CategoryModel, Keyword, \
ArchesModel, HomepageModel, HerdsModel, \
MaintainerModel, UseFlagDescriptionModel, \
- RepositoryModel
+ RepositoryModel, VirtualPackageModel
databrowse.site.register(EbuildModel, PackageModel, UseFlagModel,
- LicensModel, CategoryModel, Keyword, ArchesModel, \
- HomepageModel, HerdsModel, MaintainerModel, \
- UseFlagDescriptionModel, RepositoryModel)
+ LicensModel, CategoryModel, Keyword, ArchesModel,
+ HomepageModel, HerdsModel, MaintainerModel,
+ UseFlagDescriptionModel, RepositoryModel,
+ VirtualPackageModel)
urlpatterns += (
url(r'^data/(.*)',databrowse.site.root),
url(r'^404/$','django.views.defaults.page_not_found', name = '404'),
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/
@ 2012-06-14 23:11 Slava Bacherikov
0 siblings, 0 replies; 5+ messages in thread
From: Slava Bacherikov @ 2012-06-14 23:11 UTC (permalink / raw
To: gentoo-commits
commit: 9aa43662284ea5ba65264217e76434ca8b038972
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
AuthorDate: Thu Jun 14 23:10:52 2012 +0000
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
CommitDate: Thu Jun 14 23:10:52 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=9aa43662
Fix typo LicenseModel
---
gpackages/apps/packages/admin.py | 6 +++---
gpackages/apps/packages/models.py | 6 +++---
gpackages/apps/packages/scan.py | 2 +-
gpackages/main/urls.py | 4 ++--
4 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/gpackages/apps/packages/admin.py b/gpackages/apps/packages/admin.py
index f803372..9ce400d 100644
--- a/gpackages/apps/packages/admin.py
+++ b/gpackages/apps/packages/admin.py
@@ -1,6 +1,6 @@
from django.contrib import admin
from django.db.models import Count
-from models import EbuildModel, PackageModel, LicensModel, CategoryModel, \
+from models import EbuildModel, PackageModel, LicenseModel, CategoryModel, \
UseFlagModel, RepositoryModel, HomepageModel, MaintainerModel, \
Keyword, ArchesModel, UseFlagDescriptionModel, HerdsModel, \
VirtualPackageModel
@@ -68,7 +68,7 @@ class HomepageAdmin(admin.ModelAdmin):
list_display = ('url',)
search_fields = ('url',)
-class LicensAdmin(EbuildsCountAdmin, admin.ModelAdmin):
+class LicenseAdmin(EbuildsCountAdmin, admin.ModelAdmin):
list_display = ('name', 'ebuilds_count')
search_fields = ('name',)
@@ -76,7 +76,7 @@ class LicensAdmin(EbuildsCountAdmin, admin.ModelAdmin):
admin.site.register(EbuildModel, EbuildAdmin)
admin.site.register(VirtualPackageModel, VirtualPackageAdmin)
admin.site.register(PackageModel, PackageAdmin)
-admin.site.register(LicensModel, LicensAdmin)
+admin.site.register(LicenseModel, LicenseAdmin)
admin.site.register(CategoryModel)
admin.site.register(UseFlagModel, UseFlagAdmin)
admin.site.register(UseFlagDescriptionModel, UseFlagDescriptionAdmin)
diff --git a/gpackages/apps/packages/models.py b/gpackages/apps/packages/models.py
index 80ebc9e..612de5b 100644
--- a/gpackages/apps/packages/models.py
+++ b/gpackages/apps/packages/models.py
@@ -228,7 +228,7 @@ class UseFlagDescriptionModel(models.Model):
class Meta:
unique_together = ('use_flag', 'package')
-class LicensModel(models.Model):
+class LicenseModel(models.Model):
name = models.CharField(unique = True, max_length = 60)
#description = TextField()
@@ -241,7 +241,7 @@ class EbuildModel(AbstractDateTimeModel):
version = models.CharField(max_length = 26)
revision = models.CharField(max_length = 12)
use_flags = models.ManyToManyField(UseFlagModel)
- licenses = models.ManyToManyField(LicensModel)
+ licenses = models.ManyToManyField(LicenseModel)
license = models.CharField(max_length = 254, blank = True )
ebuild_hash = models.CharField(max_length = 128)
ebuild_mtime = models.DateTimeField(blank = True, null = True)
@@ -290,7 +290,7 @@ class EbuildModel(AbstractDateTimeModel):
self.save()
l = []
for license in ebuild.licenses:
- k, created = LicensModel.objects.get_or_create(name = license)
+ k, created = LicenseModel.objects.get_or_create(name = license)
if created:
k.save()
l.append(k)
diff --git a/gpackages/apps/packages/scan.py b/gpackages/apps/packages/scan.py
index cdd9538..f4c6377 100644
--- a/gpackages/apps/packages/scan.py
+++ b/gpackages/apps/packages/scan.py
@@ -317,7 +317,7 @@ class Scanner(object):
def get_licenses_objects(self, ebuild):
licenses = ebuild.licenses
- return _get_items(licenses, models.LicensModel, 'name', self.licenses_cache)
+ return _get_items(licenses, models.LicenseModel, 'name', self.licenses_cache)
def get_uses_objects(self, ebuild):
uses = [ use.name for use in ebuild.iter_uses() ]
diff --git a/gpackages/main/urls.py b/gpackages/main/urls.py
index 262300f..8e8c588 100644
--- a/gpackages/main/urls.py
+++ b/gpackages/main/urls.py
@@ -19,13 +19,13 @@ if DEBUG:
from django.contrib import databrowse
from packages.views import TemplatesDebugView
from packages.models import EbuildModel, PackageModel, UseFlagModel, \
- LicensModel, CategoryModel, Keyword, \
+ LicenseModel, CategoryModel, Keyword, \
ArchesModel, HomepageModel, HerdsModel, \
MaintainerModel, UseFlagDescriptionModel, \
RepositoryModel, VirtualPackageModel
databrowse.site.register(EbuildModel, PackageModel, UseFlagModel,
- LicensModel, CategoryModel, Keyword, ArchesModel,
+ LicenseModel, CategoryModel, Keyword, ArchesModel,
HomepageModel, HerdsModel, MaintainerModel,
UseFlagDescriptionModel, RepositoryModel,
VirtualPackageModel)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/
@ 2012-07-30 23:30 Slava Bacherikov
0 siblings, 0 replies; 5+ messages in thread
From: Slava Bacherikov @ 2012-07-30 23:30 UTC (permalink / raw
To: gentoo-commits
commit: 41baf0063cc9cfa177fab60cc9a7cfab0e982b9d
Author: Slava Bacherikov <slava <AT> bacher09 <DOT> org>
AuthorDate: Mon Jul 30 17:09:45 2012 +0000
Commit: Slava Bacherikov <slava <AT> bacherikov <DOT> org <DOT> ua>
CommitDate: Mon Jul 30 17:09:45 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-packages.git;a=commit;h=41baf006
Add simple sitemap
---
gpackages/apps/packages/views.py | 11 +++++++++++
gpackages/main/settings.py | 1 +
gpackages/main/urls.py | 13 +++++++++++++
3 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/gpackages/apps/packages/views.py b/gpackages/apps/packages/views.py
index 78ed365..0d483f9 100644
--- a/gpackages/apps/packages/views.py
+++ b/gpackages/apps/packages/views.py
@@ -12,6 +12,7 @@ from django.core.urlresolvers import reverse
from django.shortcuts import get_object_or_404
from package_info.parse_cp import EbuildParseCPVR, PackageParseCPR
+from django.contrib.sitemaps import Sitemap
arches = ['alpha', 'amd64', 'arm', 'hppa', 'ia64', 'ppc', 'ppc64', 'sparc', 'x86']
@@ -278,3 +279,13 @@ class MainPageFeed(FeedWithUpdated):
class MainPageFeedAtom(MainPageFeed):
link = '/atom/'
feed_type = RightAtom1Feed
+
+class PackageSitemap(Sitemap):
+ priority = 0.9
+ changefreq = "hourly"
+
+ def items(self):
+ return PackageModel.objects.all()[:1000]
+
+ def lastmod(self, obj):
+ return obj.updated_datetime
diff --git a/gpackages/main/settings.py b/gpackages/main/settings.py
index cf524f7..6046db8 100644
--- a/gpackages/main/settings.py
+++ b/gpackages/main/settings.py
@@ -126,6 +126,7 @@ INSTALLED_APPS = (
'django.contrib.staticfiles',
'django.contrib.admin',
'django.contrib.flatpages',
+ 'django.contrib.sitemaps',
# 'django.contrib.admindocs',
#
'south',
diff --git a/gpackages/main/urls.py b/gpackages/main/urls.py
index c0c3e67..b9958d5 100644
--- a/gpackages/main/urls.py
+++ b/gpackages/main/urls.py
@@ -1,6 +1,18 @@
from django.conf.urls import patterns, include, url
from django.contrib import admin
from main.settings import DEBUG
+from django.contrib.sitemaps import FlatPageSitemap
+from packages.views import PackageSitemap
+
+# For caching sitemap
+from django.contrib.sitemaps import views as sitemaps_views
+from django.views.decorators.cache import cache_page
+
+sitemaps = {
+ 'flatpages': FlatPageSitemap,
+ 'packages' : PackageSitemap,
+}
+cached_sitemap = cache_page(3600)(sitemaps_views.sitemap)
admin.autodiscover()
@@ -9,6 +21,7 @@ urlpatterns = patterns('',
url(r'^i18n/' , include('django.conf.urls.i18n')),
url(r'^setlang/$', 'generic.views.set_lang_view', name = 'setlang'),
url(r'', include('packages.urls')),
+ (r'^sitemap\.xml$', cached_sitemap, {'sitemaps': sitemaps}),
)
if DEBUG:
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-07-30 23:30 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-12 18:34 [gentoo-commits] proj/gentoo-packages:master commit in: gpackages/main/, gpackages/apps/packages/ Slava Bacherikov
-- strict thread matches above, loose matches on Subject: below --
2012-07-30 23:30 Slava Bacherikov
2012-06-14 23:11 Slava Bacherikov
2012-06-04 20:09 Slava Bacherikov
2012-06-03 13:19 Slava Bacherikov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox