Django और दक्षिण नौसिखिया यहाँDjango + दक्षिण माइग्रेशन
मैं एक मेज मैं बनाया की एन्कोडिंग बदलने की जरूरत है, किसी को भी एक प्रवास का उपयोग कर ऐसा करने के लिए एक तरह से पता है के साथ एक मेज की एन्कोडिंग बदल रहे हैं?
Django और दक्षिण नौसिखिया यहाँDjango + दक्षिण माइग्रेशन
मैं एक मेज मैं बनाया की एन्कोडिंग बदलने की जरूरत है, किसी को भी एक प्रवास का उपयोग कर ऐसा करने के लिए एक तरह से पता है के साथ एक मेज की एन्कोडिंग बदल रहे हैं?
मुझे लगता है कि समाधान डेटाबेस-विशिष्ट होगा। उदाहरण के लिए, एक MySQL डेटाबेस के लिए:
from south.db import db
from south.v2 import SchemaMigration
class Migration(SchemaMigration):
def forwards(self, orm):
db.execute('alter table appname_modelname charset=utf8')
db.execute('alter table appname_modelname alter column fieldname charset=utf8')
# et cetera for any other char or text columns
def backwards(self, orm):
db.execute('alter table appname_modelname charset=latin1')
db.execute('alter table appname_modelname alter column fieldname charset=latin1')
# et cetera for any other char or text columns
complete_apps = ['appname']
हाय का उपयोग कर रहा हूं, बहुत बहुत धन्यवाद, अब मैं आपके सुझाव का परीक्षण कर रहा हूं। मैं सोच रहा था, क्या manage.py schemamigration --auto का उपयोग कर ऐसा करने का कोई तरीका है? (यानी बस मॉडल बदल रहे हैं) –
क्या आप केवल एक तालिका या संपूर्ण डेटाबेस के एन्कोडिंग को बदलने की कोशिश कर रहे हैं? आप किस डेटाबेस का उपयोग कर रहे हैं? –
सिर्फ एक टेबल। मैं mysql –