forked from 00dani/lemoncurry
Rename tags to 'cats', a silly catgirl pun on 'categories'
This commit is contained in:
parent
2413a8aa96
commit
3ca2af74bb
5 changed files with 42 additions and 18 deletions
24
entries/migrations/0011_auto_20171120_1108.py
Normal file
24
entries/migrations/0011_auto_20171120_1108.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.7 on 2017-11-20 00:08
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('entries', '0010_entry_tags'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameModel(
|
||||
old_name='Tag',
|
||||
new_name='Cat',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='entry',
|
||||
old_name='tags',
|
||||
new_name='cats',
|
||||
),
|
||||
]
|
|
@ -17,20 +17,20 @@ from lemoncurry import requests
|
|||
ENTRY_KINDS = [(k.id, k.id) for k in kinds.all]
|
||||
|
||||
|
||||
class TagManager(models.Manager):
|
||||
class CatManager(models.Manager):
|
||||
def from_name(self, name):
|
||||
tag, created = self.get_or_create(name=name, slug=slugify(name))
|
||||
return tag
|
||||
cat, created = self.get_or_create(name=name, slug=slugify(name))
|
||||
return cat
|
||||
|
||||
|
||||
class Tag(models.Model):
|
||||
objects = TagManager()
|
||||
class Cat(models.Model):
|
||||
objects = CatManager()
|
||||
name = models.CharField(max_length=255, unique=True)
|
||||
slug = models.CharField(max_length=255, unique=True)
|
||||
|
||||
@property
|
||||
def url(self):
|
||||
return reverse('entries:tagged', args=(self.slug,))
|
||||
return reverse('entries:cat', args=(self.slug,))
|
||||
|
||||
class Meta:
|
||||
ordering = ('name',)
|
||||
|
@ -55,7 +55,7 @@ class Entry(ModelMeta, TimeStampedModel):
|
|||
photo = models.ImageField(blank=True)
|
||||
content = models.TextField()
|
||||
|
||||
tags = models.ManyToManyField(Tag, related_name='entries')
|
||||
cats = models.ManyToManyField(Cat, related_name='entries')
|
||||
|
||||
in_reply_to = models.CharField(max_length=255, blank=True)
|
||||
like_of = models.CharField(max_length=255, blank=True)
|
||||
|
|
|
@ -41,12 +41,12 @@
|
|||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if entry.tags.exists %}
|
||||
{% if entry.cats.exists %}
|
||||
<div class="card-footer">
|
||||
{% for t in entry.tags.all %}
|
||||
<a class="p-category" href="{{ t.url }}">
|
||||
{% for c in entry.cats.all %}
|
||||
<a class="p-category" href="{{ c.url }}">
|
||||
<i class="fa fa-hashtag"></i>
|
||||
{{ t.name }}
|
||||
{{ c.name }}
|
||||
</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
|
|
@ -15,9 +15,9 @@ app_name = 'entries'
|
|||
urlpatterns = [
|
||||
url('^atom$', feeds.AtomHomeEntries(), name='atom'),
|
||||
url('^rss$', feeds.RssHomeEntries(), name='rss'),
|
||||
url('^tags/(?P<slug>.+)$', views.tagged, name='tagged'),
|
||||
url('^cats/(?P<slug>.+)$', views.cat, name='cat'),
|
||||
]
|
||||
crumbs.add(prefix('tagged'), parent='home:index')
|
||||
crumbs.add(prefix('cat'), parent='home:index')
|
||||
|
||||
for k in kinds.all:
|
||||
kind = k.plural
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
from annoying.decorators import render_to
|
||||
from django.shortcuts import get_object_or_404, redirect
|
||||
from .models import Entry, Tag
|
||||
from .models import Entry, Cat
|
||||
|
||||
|
||||
@render_to('entries/index.html')
|
||||
|
@ -15,11 +15,11 @@ def index(request, kind):
|
|||
|
||||
|
||||
@render_to('entries/index.html')
|
||||
def tagged(request, slug):
|
||||
tag = get_object_or_404(Tag, slug=slug)
|
||||
def cat(request, slug):
|
||||
cat = get_object_or_404(Cat, slug=slug)
|
||||
return {
|
||||
'entries': tag.entries.all(),
|
||||
'title': '#' + tag.name,
|
||||
'entries': cat.entries.all(),
|
||||
'title': '#' + cat.name,
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue