के साथ गैर-शून्य और अद्वितीय फ़ील्ड जोड़ें मेरे पास कुछ प्रविष्टियों वाले सर्वर में चल रहे मेरे ऐप में एक मॉडल है। मुझे SlugField
जोड़ने की जरूरत है, इस मॉडल के लिए अद्वितीय और नल। SlugField
trading_name
पर आधारित होगा। मैं इस नए क्षेत्र जोड़ने के लिए अपने मॉडल बदल गया है और विधि बचाने संशोधित किया: मॉडल बदलने के बादपहले से आबादी वाले मॉडल
class Supplier(StatusModel):
SLUG_MAX_LENGTH = 210
slug = models.SlugField(unique=True, max_length=SLUG_MAX_LENGTH)
trading_name = models.CharField(max_length=200, verbose_name=_('trading name'))
...
def save(self, *args, **kwargs):
self.slug = orig = slugify(self.trading_name)[:Supplier.SLUG_MAX_LENGTH]
for x in itertools.count(1):
if not Supplier.objects.filter(slug=self.slug).exists():
break
# Truncate the original slug dynamically. Minus 1 for the hyphen.
self.slug = "%s-%d" % (orig[:Supplier.SLUG_MAX_LENGTH - len(str(x)) - 1], x)
self.full_clean()
super(Supplier, self).save(*args, **kwargs)
, मैं manage.py makemigrations
चलाने के लिए और आउटपुट के रूप में इस प्रवास मिल गया है:
class Migration(migrations.Migration):
dependencies = [
('opti', '0003_auto_20141226_1755'),
]
operations = [
migrations.AddField(
model_name='supplier',
name='slug',
field=models.SlugField(unique=True, default='', max_length=210),
preserve_default=False,
),
]
मैं manage.py migrate
नहीं चला सकता क्योंकि डिफ़ॉल्ट मान अद्वितीय कंसट्रेंट के कारण काम नहीं करेगा।
मेरा सवाल है: मैं Django 1.7 के साथ यह कैसे कर सकता हूं? मुझे स्कीमा परिवर्तन लागू करने और वर्तमान डेटाबेस को मेरे डेटाबेस में रखने की आवश्यकता है।
पोस्ट अपने बनाया प्रवास इसलिए हम इसे – FrEaKmAn
धन्यवाद बदल सकते हैं @FrEaKmAn - मैं जोड़ दिया है उचित विवरण :) – MatheusJardimB