[问题] Django模型与数据库(书籍It's Django)

楼主: jackjenny (痛苦)   2016-03-23 06:32:12
最近买了It's Django书籍练习
大致上都可以操作成功
这几天遇到一个问题卡关三天了
想请问这Django大大
[Q1]:
在It's Django第八章 模型与数据库p134~p136
Step1:进入Django shell
Step2:建立模型物件
>>>from restaurants.models import Restaurant,Food
>>>r1=Restaurant(name='派森家常小馆',phone_number='02-12345678',
address='天龙国天龙区天龙路一号')
>>>r1
<Restaurant:Restaurant object>
(这句话是为了证明r1是Restaurant物件)
step3:存盘
>>>r1.save()
step4:书上建议希望一次完成模型资料的建立与写入数据库objects.create所以
>>>r2=Restaurant.objects.creat(name='古意得餐听',
phone_number='02-87654321',address='天龙国天龙区天龙路一百号')
>>>r2
<Restaurant:Restaurant object>
step5:r1与r2在shell出来的资讯会造成辨识困难
所以在原本的models.py增加_unicode_
===============================================================
from django.db import models
class Restaurant(models.Model):
name=models.CharField(max_length=20)
phone_number=models.CharField(max_length=15)
address=models.CharField(max_length=50,blank=True)
def __unicode__(self):
return self.name
#(增加_unicode_)
class Food(models.Model):
name=models.CharField(max_length=20)
price=models.DecimalField(max_digits=3,decimal_places=0)
comment=models.CharField(max_length=50,blank=True)
is_spicy=models.BooleanField(default=False)
restaurant=models.ForeignKey(Restaurant)
def _unicode_(self):
return self.name
#(增加_unicode_)
=================================================================
step6:离开shell让刚修改的models.py可以被加载直译器
在进入Django shell 并再次汇入
>>>from restaurant.models import Restaurant,Food
>>>restaurants=Restaurant.objects.all()
>>>restaurants
[<Restaurant:派森家常小馆>,<Restaurant:古意的餐厅>]
#(这是书上默认的答案会出现两家旅馆名称但是我操作三天都是以下答案
[<Restaurant:Restaurant object>,<Restaurant:Restaurant object>,
<Restaurant:Restaurant object>,<Restaurant:Restaurant object>] )
#本文问题就是为什<Restaurant:Restaurant object>出现四次????
而不是书上预期的答案会出现旅馆名子?卡关四天
先感谢高手大大们(虽然打字很辛苦 你们看更辛苦)
[Q2]:
另外有个问题想请问怎确定是进入Django shell而不是Python shell??
按照网络Djangogirls教学文章
https://djangogirlstaipei.gitbooks.io/django-girls-taipei-tutorial/content/django/installation.html
(djangogirls_venv) ~/djangogirls/mysite$ python manage.py shell
可进入Django 可是在我电脑确有问题而进不了下阶段>>>画面
(我的电脑资讯请参考Windows8/Python3.4/Django1.8
而我是参考官方Django文件
https://docs.djangoproject.com/en/1.8/ref/django-admin/#django-admin-shell
输入指令python manage.py shell

Links booklink

Contact Us: admin [ a t ] ucptt.com