Angel Velásquez
@angvp
angvp@archlinux.org
"Es un monólogo o un discurso largo, dado por una persona cuando está molesta o irritada"
(traducción de wikipedia)
Como perder 20 kilos en 2 semanas con HERBALIFE
Route Atlas es una herramienta creada para ayudar a los viajeros a planificar sus recorridos dándole toda la información posible (de manera escrita, visual y audiovisual) de los sitios más impresionantes de América del Sur.
Los contenidos del sitio están disponibles en 3 idiomas .. (Español, Inglés, Portugués de Brasil).
(+):
(-):
https://github.com/kristianoellegaard/django-hvad
(+):
(-):
https://github.com/deschler/django-modeltranslation
(+):
(-):
https://bitbucket.org/drmeers/django-dbgettext/wiki/browse/
(+):
(-):
https://github.com/RouteAtlas/django-klingon/
...
_ = lambda s: s
LANGUAGES = (
('es', _('Español')),
('it', _('Italiano')),
('en', _('Inglés')),
)
DEFAULT_LANGUAGE = 'es'
KLINGON_DEFAULT_LANGUAGE = DEFAULT_LANGUAGE
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_extensions',
'klingon',
'rant',
)
from autoslug import AutoSlugField
from django.db import models
from klingon.models import AutomaticTranslation
class Category(models.Model, AutomaticTranslation):
name = models.CharField(max_length=100)
description = models.TextField()
#klingon begin
translatable_fields = ('name', 'description')
class Meta:
verbose_name_plural = 'Categories'
def __str__(self):
return self.name
class Rant(models.Model, AutomaticTranslation):
category = models.ForeignKey(Category)
title = models.CharField(max_length=100)
description = models.TextField()
slug = AutoSlugField(populate_from='title')
# klingon begin
translatable_fields = ('title', 'description', 'slug')
translatable_slug = 'slug'
def __str__(self):
return self.titlefrom django import forms
from django.contrib import admin
from rant.models import Category, Rant
from klingon.admin import TranslationInline, TranslationInlineForm, create_translations
class RichTranslationInlineForm(TranslationInlineForm):
widgets = {
'CharField': forms.TextInput(attrs={'class': 'klingon-char-field'}),
'TextField': forms.Textarea(attrs={'class': 'klingon-text-field'}),
'SlugField': forms.TextInput(attrs={'readonly': 'readonly', 'disabled':
'disabled'}),
}
class RichTranslationInline(TranslationInline):
form = RichTranslationInlineForm
class CategoryAdmin(admin.ModelAdmin):
list_display = ('id', 'name', 'description', 'translations_link')
search_fields = ['name', 'description']
inlines = [RichTranslationInline]
actions = [create_translations]
class RantAdmin(admin.ModelAdmin):
list_display = ('id', 'title', 'slug', 'translations_link')
search_fields = ['title', 'description']
inlines = [RichTranslationInline]
actions = [create_translations]
admin.site.register(Category, CategoryAdmin)
admin.site.register(Rant, RantAdmin)(casi siempre fallan) :( crucemos los dedos :D
Angel "qbasic" Velasquez
angvp@archlinux.org
@angvp (twitter, github)
https://github.com/angvp/klingonexample