python Django入门

python django入门

如何创建一个项目

需要执行命令的步骤, 例如新建一个pizzeria的项目,并添加一个pizzas的应用程序

1.建立虚拟环境 (python3环境)

mkdir pizzeria
cd pizzeria
python3 -m venv ll_env

2.激活虚拟环境

pizzeria$ source ll_env/bin/activate
如果需要停止虚拟环境 $ deactive

3.安装Django

(ll_env)pizzeria$ pip install Django

4.在django中创建项目

(ll_env)pizzeria$ django-admin.py startproject pizzeria .
注意末尾有个点
ls运行目录结构如下

[外链图片转存失败(img-PTdNqoUb-1566751018861)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190825233646717.png)]

5.创建数据库python3 manage.py migrate

[外链图片转存失败(img-gMIA6Cnu-1566751018862)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190825233710804.png)]

6.运行项目

python3 manage.py runserver
打开浏览器 输入http://127.0.0.1:8000/,将会看到django的初始页面
如果出现already in use, 那么是端口被绑定了, 换个未被绑定的端口
python3 manage.py runserver 8001 

7.创建应用程序

1> 首先打开个新的终端在
2> 进入虚拟环境 
pizzeria$ source ll_env/bin/activate
(ll_env)pizzeria$ python3 manage.py startapp pizzas 

[外链图片转存失败(img-yQdYQOG7-1566751018862)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190825233828991.png)]

注意这里程序名和之前项目名不一样,重复会报如下错误

[外链图片转存失败(img-IG6QN93C-1566751018863)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190825233924847.png)]

7.1定义模型

​ 打开pizzas下的models.py

from django.db import models

# 写入我们自己模块
#定义一个Pizza的模型,用来存储披萨的名字
class  Pizza(models.Model):
	name = models.CharField(max_length=200)
	date_added = models.DateTimeField(auto_now_add=True)

	def __str__(self):
		return self.name

#定义一个Topping的模型,包含字段pizza是一个关联到Pizza的外键,
#字段name用来用来存储配料
class Topping(models.Model):
	pizza = models.ForeignKey(Pizza, on_delate=models.CASCADE)
	name = models.TextField()
	date_added = models.DateTimeField(auto_now_add=True)

	def __str__(self):
		return self.test[:50] + '...'
7.2激活模型

​ 打开pizzeria下的settings.py, 添加如下

[外链图片转存失败(img-TLPx4hAD-1566751018863)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190825235937830.png)]

​ 执行命令python3 manage.py makemigrations pizzas

[外链图片转存失败(img-FZcCuPf4-1566751018864)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826000102597.png)]

​ 执行命令 python3 manage.py migrate

[外链图片转存失败(img-nbDjFltD-1566751018864)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826000205852.png)]

7.3 django管理网站
  • 创建超级用户

python3 manage.py createsuperuser

[外链图片转存失败(img-Qo94S71L-1566751018865)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826000501055.png)]

又想可以不用输入直接回车

  • 相管理网站注册模型
    • 打开pizzas下的admin.py
    • 向管理网站注册自己创建的模型
from django.contrib import admin

# 注册自己写的模块
from pizzas.models import Pizza, Topping

admin.site.register(Pizza)
admin.site.register(Topping)
  • 浏览器打开http://localhost:8000/admin/l

[外链图片转存失败(img-shZQ7S4s-1566751018865)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826001201810.png)]

  • 登录成功后如下为我们添加的,就可以添加披萨, 以及添加相应的配方。

[外链图片转存失败(img-ZnqWPUCd-1566751018866)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826001307876.png)]

注意,每当我们在models.oy中添加模块,就需要将模块记录在数据库中,因此需要执行

python3 manage.py makemigrations pizzas

python3 manage.py migrate

还需要在admin.py中注册模块

from pizzas.modes import ***

admin.site.register(***)

8.使用shell查看数据库中存储数据

我们先在网站中随便添加几项内容

[外链图片转存失败(img-WFOaIWFf-1566751018866)(python django入门项目创建.assets/image-20190826003520043.png)]

在shell中查看

[外链图片转存失败(img-7eyizsuE-1566751018866)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826002948109.png)]

导入 Topping查看信息 from pizzas.models import Topping

[外链图片转存失败(img-ulP9LvTn-1566751018867)(/Users/deerwang/Library/Application Support/typora-user-images/image-20190826003221938.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用Django自带的用户认证系统来实现账号注册。以下是一个简单的步骤: 1. 创建Django项目并启动服务器。 2. 打开settings.py文件,添加以下内容: ``` INSTALLED_APPS = [ ... 'django.contrib.auth', 'django.contrib.contenttypes', ... ] AUTH_USER_MODEL = 'myapp.User' ``` 在上面的代码中,myapp是你的应用程序名称。 3. 创建一个名为User的模型来扩展Django自带的用户模型。 ``` from django.contrib.auth.models import AbstractUser class User(AbstractUser): pass ``` 在上面的代码中,我们继承了Django自带的AbstractUser模型,并添加了一个空的pass字段。 4. 打开urls.py文件,添加以下内容: ``` from django.urls import path, include from django.contrib.auth import views as auth_views urlpatterns = [ ... path('accounts/', include('django.contrib.auth.urls')), path('signup/', SignupView.as_view(), name='signup'), ] ``` 在上面的代码中,我们包含了Django自带的认证URL,并添加了一个名为SignupView的视图来处理账号注册。 5. 创建一个名为SignupView的视图来处理账号注册。 ``` from django.views.generic.edit import CreateView from django.urls import reverse_lazy from .models import User class SignupView(CreateView): model = User fields = ['username', 'email', 'password'] success_url = reverse_lazy('login') template_name = 'signup.html' ``` 在上面的代码中,我们创建了一个名为SignupView的视图,并使用Django的CreateView视图来处理表单提交。我们指定了需要展示的字段,指定成功后的URL和模板名称。 6. 创建一个名为signup.html的模板来展示注册表单。 ``` {% extends 'base.html' %} {% block content %} <h2>Sign Up</h2> <form method="post"> {% csrf_token %} {{ form.as_p }} <button type="submit">Sign Up</button> </form> {% endblock %} ``` 在上面的代码中,我们展示了一个注册表单,包含了用户名、邮箱和密码字段,并添加了一个提交按钮。 7. 运行Django服务器,访问http://localhost:8000/signup/,就可以看到注册表单了。 以上就是使用PythonDjango实现账号注册的简单步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值