4 回答

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
直接利用python提供的json包,在django model的定義中增加一個(gè)方法toJSON,利用django model 能訪問(wèn) _meta.fields 得到相關(guān)屬性而得到,例子如下:
class Category(models.Model):
autoid = models.AutoField(primary_key=True)
email=models.CharField(max_length=150,blank=False)
comtype=models.CharField(max_length=20,blank=False)
catname=models.CharField(max_length=150,blank=False)
def __unicode__(self):
return '%s' % (self.catname)
def toJSON(self):
import json
return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
然后用django查出數(shù)據(jù),并轉(zhuǎn)換成json,代碼如下:
row=models.Category.objects.get(autoid=23)
print row.toJSON()

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊
在firefox中按F12,進(jìn)入開(kāi)發(fā)者工具,然后選到網(wǎng)絡(luò)標(biāo)簽,再打開(kāi)需要返回JSON的頁(yè)面,就可以看到相應(yīng)的數(shù)據(jù),如下圖所示: 1、點(diǎn)重新載入 2、按類型排序,選JSON類型數(shù)據(jù) 3、點(diǎn)相應(yīng)的連接,在右側(cè)就會(huì)顯示json數(shù)據(jù)

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
直接利用python提供的json包,在django model的定義中增加一個(gè)方法toJSON,利用django model 能訪問(wèn) _meta.fields 得到相關(guān)屬性而得到,例子如下:
123456789101112 | class Category(models.Model): autoid = models.AutoField(primary_key = True ) email = models.CharField(max_length = 150 ,blank = False ) comtype = models.CharField(max_length = 20 ,blank = False ) catname = models.CharField(max_length = 150 ,blank = False ) def __unicode__( self ): return '%s' % ( self .catname) def toJSON( self ): import json return json.dumps( dict ([(attr, getattr ( self , attr)) for attr in [f.name for f in self ._meta.fields]])) |
然后用django查出數(shù)據(jù),并轉(zhuǎn)換成json,代碼如下:
12 | row = models.Category.objects.get(autoid = 23 ) print row.toJSON() |
添加回答
舉報(bào)