mysql两者之间_Django和MySQL - 两者之间的数据是不同的

我有一个使用MySQL作为后端的Django应用程序。我在原始MySQL记录显示一个值时遇到困难,但Django在Web应用程序中提供了其他内容。

例如,我有一个客户端数据表。每条记录中的一个字段称为snailMailInvoice并且是Y / N选项 - 默认值是Y(varchar类型)。

+-------------------+--------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+-------------------+--------------+------+-----+---------+----------------+

| snailMailInvoice | varchar(3) | NO | | Y | |原始的MySQL:

select * from systems_system_contact where lastName="SomeClient";

...a bunch of other fields... | snailMailInvoice |

...a bunch of other fields... | N然后,在Django App中,表单显示Y(另一选择)。这就像Django应用程序无法看到MySQL值,所以它默认为Y。如果通过Django应用程序选择N并保存表单,那么该值将粘贴到Django中的N。

为什么会发生这种情况?

编辑 - 添加一些代码

Forms.py:

class System_Contact_Form(ModelForm):

class Meta:

model = System_Contact

exclude = ('isMainContact', 'systemOwner', 'companyName', 'isRessyContact')Views.py:

def contact_details(request, scID):

redirect_to = request.REQUEST.get('next', '/systems/contacts/')

if request.method == 'POST':

syscontEdit = System_Contact.objects.get(pk=scID)

form = System_Contact_Form(request.POST, instance=syscontEdit)

if form.is_valid():

form.save()

return HttpResponseRedirect(redirect_to)

else:

syscontView = System_Contact.objects.get(pk=scID)

form = System_Contact_Form(instance=syscontView)

c = {

'form':form,

'cancel':redirect_to

}

return render_to_response('pages/systems/contact_details.html', c, context_instance=RequestContext(request))Models.py:

class System_Contact(models.Model):

IS_MAIN_CONTACT_CHOICES = (

('Y', 'Yes'),

('N', 'No'),

)

IS_SYSTEM_OWNER_CHOICES = (

('Y', 'Yes'),

('N', 'No'),

)

IS_RESSY_CONTACT_CHOICES = (

('Y', 'Yes'),

('N', 'No, this is a commercial contact'),

)

TRADE_CHOICES = (

('EL', 'Electrician'),

('LA', 'Landscaper'),

('PL', 'Plumber'),

('TR', 'Trencher'),

)

SNAIL_MAIL_CHOICES = (

('Y', 'Yes'),

('N', 'No'),

)

SNAIL_MAIL_INVOICE_CHOICES = (

('Y', 'Yes'),

('N', 'No'),

)

firstInitial = models.CharField(max_length = 10, verbose_name = 'First Initial', blank = True, null = True)

firstName = models.CharField(max_length = 60, verbose_name = 'First Name', blank = True, null = True)

lastName = models.CharField(max_length = 160, verbose_name = 'Last Name', blank = True, null = True)

phonetically = models.CharField(max_length = 100, verbose_name = 'Phonetically', blank = True, null = True)

companyName = models.CharField (max_length = 160, verbose_name = 'Company Name', blank = True, null = True) #Only used for Commercial Owners, no other field needed

homePhone = models.CharField(max_length = 60, verbose_name = 'Home Phone Number', blank = True, null = True)

officePhone = models.CharField(max_length = 60, verbose_name = 'Office Phone Number', blank = True, null = True)

cellPhone = models.CharField(max_length = 60, verbose_name = 'Cell Phone Number', blank = True, null = True)

faxNumber = models.CharField (max_length= 60, blank=True, null=True, verbose_name = 'Fax Number')

isMainContact = models.CharField (max_length = 3, verbose_name = 'Is the Main Contact?', choices = IS_MAIN_CONTACT_CHOICES, default='N')

isRessyContact = models.CharField (max_length = 3, verbose_name = 'Is this a Ressy Contact?', choices = IS_RESSY_CONTACT_CHOICES, default='Y')

isArchived = models.BooleanField(verbose_name = 'Archived?', default = False)

systemOwner = models.CharField (max_length = 3, verbose_name = 'Is a System Owner?', choices = IS_SYSTEM_OWNER_CHOICES, default='N') #this is just a flag to say they own a system

worksFor = models.CharField (max_length = 70, verbose_name = 'Works For', blank = True, null = True)

tradeType = models.ForeignKey(Contact_Trade, blank=True, null=True, verbose_name='Trade')

emailAddress = models.EmailField(verbose_name = 'Email Address', blank = True, null = True)

billingAddress = models.CharField(max_length = 150, verbose_name = 'Billing Address', blank=True, null=True )

billingCity = models.CharField(max_length = 90, verbose_name = 'Billing City', blank=True, null=True)

billingProvince = models.CharField(max_length = 30, verbose_name = 'Billing Province', blank=True, null=True)

billingPostalCode = models.CharField(max_length = 10, verbose_name = 'Billing Postal Code', blank=True, null=True)

snailMailOnly = models.CharField(max_length = 3, verbose_name = 'Snail Mail Only?', choices = SNAIL_MAIL_CHOICES, default='Y')

snailMailInvoice = models.CharField(max_length = 3, verbose_name = 'Snail Mail Invoice?', choices = SNAIL_MAIL_INVOICE_CHOICES, default='Y')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值