CentOS下的Django项目—— 一、建立项目+二、创建应用程序

26 篇文章 1 订阅
12 篇文章 0 订阅

《Python编程从入门到实践》学习笔记
之前学习的时候是在windows下的,因为部署需要,重新在linux下弄。是在虚拟机上安装的Centos
资源:https://www.python.org/ftp/python/

注:我的centos本来登陆的图形用户界面是不是root账户,这里为了方便,我修改一下
centos图形用户界面登录root账户
vi /etc/gdm/custom.conf
在[daemon]下面添加
AutomaticLoginEnable=True
AutomaticLogin=root

CentOS下的Django项目—— 一、建立项目+二、创建应用程序

1.csdn收藏了一个centos安装python3.6.4的过程
2.建立虚拟环境:python -m venv ll_env
3.激活虚拟环境:source ll_env/bin/activate
停止虚拟环境用:deactivate
4.安装Django:pip install Django==1.11
5.在django中创建项目:django-admin.py startproject learning_log .
6.创建数据库:python manage.py migrate
7.查看项目:python manage.py runserver
8.创建应用程序:python manage.py startapp learning_logs
9.定义模型:
learning_log/learning_logs/models.py
添加

class Topic(models.Model):
	"""用户学习的主题"""
	text=models.Charfield(max_length=200)
	date_added=models.DateTimeField(auto_now_add=True)
	
	def __tupple__(self):
		"""返回模型的字符串表示"""
		return self.text

10.激活模型
learning_log/learning_log/settings.py
找到

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

修改为

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
	# My apps
	'learning_logs',
]

11.确定如何修改数据库:python manage.py makemigrations learning_logs
12.应用迁移修改数据库:python manage.py migrate
13.创建超级用户:python manage.py createsuperuser
ll_admin
14.向管理网站注册模型:
learning_log/learning_logs/admin.py
添加

from learning_logs.models import Topic
admin.site.register(Topic)

15.添加主题:http://localhost:8000/admin/输入创建的超级用户账号密码,
为topics添加主题Chess和Rock Climbing
16.定义模型Entry
learning_log/learning_logs/models.py
添加

class Entry(models.Model):   #继承Django基类Model
	"""学到的有关某个主题的具体知识"""
	topic = models.ForeignKey(Topic,on_delete=models.CASCADE)  #第一个属性topic是一个外键实例,准备让每个主题创建时分配给它一个键
	text = models.TextField()   #属性text是一个TextField实例,不限长度
	date_added = models.DateTimeField(auto_now_add=True) #属性date_added实现按创建顺序呈现条目并在每个条目旁边放置时间戳
	
	class Meta:   #嵌套Meta类,存储用于管理模型的额外信息
		verbose_name_plural = 'entries'  #让Django在需要时使用Entries来表示多个条目
	
	def __str__(self):
		"""返回模型的字符串表示"""
		return self.text[:50]+"..."  #由于条目包含的文本可能很长,只显示前50个字符并用省略号表示显示的并非整个条目

17.确定该如何修改数据库:python manage.py makemigrations learning_logs
18.应用这种迁移修改数据库:python manage.py migrate
19.注册模型Entry
learning_log/learning_logs/admin.py
修改from learning_logs.models import Topic为

from learning_logs.models import Topic,Entry

添加

admin.site.register(Entry)

20.添加条目:为Chess添加两个条目,为Rock Climbing添加一个条目。
21.交互式shell会话
python manage.py shell
from learning_logs.models import Topic
Topic.objects.all()
topics=Topic.objects.all()
for topic in topics:
print(topic.id,topic)
t=Topic.objects.get(id=1)
t.text
t.date_added
t.entry_set.all()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值