mirror of
https://github.com/SectorLabs/django-localized-fields.git
synced 2025-12-14 15:52:25 +03:00
Merge remote-tracking branch 'beer/model_inheritance_free'
# Conflicts: # localized_fields/fields/localized_field.py # localized_fields/models.py # tests/fake_model.py
This commit is contained in:
32
README.rst
32
README.rst
@@ -62,15 +62,14 @@ Usage
|
||||
|
||||
Preparation
|
||||
^^^^^^^^^^^
|
||||
Inherit your model from ``LocalizedModel`` and declare fields on your model as ``LocalizedField``:
|
||||
Declare fields on your model as ``LocalizedField``:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from localized_fields.models import LocalizedModel
|
||||
from localized_fields.fields import LocalizedField
|
||||
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField()
|
||||
|
||||
``django-localized-fields`` integrates with Django's i18n system, in order for certain languages to be available you have to correctly configure the ``LANGUAGES`` and ``LANGUAGE_CODE`` settings:
|
||||
@@ -136,14 +135,14 @@ At the moment, it is not possible to select two languages to be marked as requir
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(required=True)
|
||||
|
||||
* Make all languages optional:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(null=True)
|
||||
|
||||
**Uniqueness**
|
||||
@@ -154,7 +153,7 @@ By default the values stored in a ``LocalizedField`` are *not unique*. You can e
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(uniqueness=['en', 'ro'])
|
||||
|
||||
* Enforce uniqueness for **all** languages:
|
||||
@@ -163,14 +162,14 @@ By default the values stored in a ``LocalizedField`` are *not unique*. You can e
|
||||
|
||||
from localized_fields import get_language_codes
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(uniqueness=get_language_codes())
|
||||
|
||||
* Enforce uniqueness for one ore more languages **together** (similar to Django's ``unique_together``):
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(uniqueness=[('en', 'ro')])
|
||||
|
||||
* Enforce uniqueness for **all** languages **together**:
|
||||
@@ -179,7 +178,7 @@ By default the values stored in a ``LocalizedField`` are *not unique*. You can e
|
||||
|
||||
from localized_fields import get_language_codes
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField(uniqueness=[(*get_language_codes())])
|
||||
|
||||
|
||||
@@ -193,12 +192,11 @@ Besides ``LocalizedField``, there's also:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from localized_fields import (LocalizedModel,
|
||||
AtomicSlugRetryMixin,
|
||||
from localized_fields import (AtomicSlugRetryMixin,
|
||||
LocalizedField,
|
||||
LocalizedUniqueSlugField)
|
||||
|
||||
class MyModel(AtomicSlugRetryMixin, LocalizedModel):
|
||||
class MyModel(AtomicSlugRetryMixin, models.Model):
|
||||
title = LocalizedField()
|
||||
slug = LocalizedUniqueSlugField(populate_from='title')
|
||||
|
||||
@@ -218,11 +216,10 @@ Besides ``LocalizedField``, there's also:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from localized_fields import (LocalizedModel,
|
||||
LocalizedField,
|
||||
from localized_fields import (LocalizedField,
|
||||
LocalizedUniqueSlugField)
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField()
|
||||
slug = LocalizedAutoSlugField(populate_from='title')
|
||||
|
||||
@@ -236,11 +233,10 @@ Besides ``LocalizedField``, there's also:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from localized_fields import (LocalizedModel,
|
||||
LocalizedField,
|
||||
from localized_fields import (LocalizedField,
|
||||
LocalizedBleachField)
|
||||
|
||||
class MyModel(LocalizedModel):
|
||||
class MyModel(models.Model):
|
||||
title = LocalizedField()
|
||||
description = LocalizedBleachField()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user