潭州课堂25班:Ph201805201 django 项目 第三课 码云注册,django项目 (课堂笔记)

本文主要是介绍潭州课堂25班:Ph201805201 django 项目 第三课 码云注册,django项目 (课堂笔记),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

d码云注册,登录,

创建项目:

 

 

 

 

 生成秘钥

 想看秘钥:

 添加公钥

 

 

复制 ssh 连接

 

 通过  git clone <ssh> 连接

 

在服务器上创建 python3 虚拟环境,

 

创建项目  pycharm  连接:

 

 

用命令创建项目

 

 

 

 

 

 

 

 

 

 

一、在码云平台创建项目

版本控制的种类:

  • 主要使用github(最主流)

    • 国内访问速度慢

    • 托管私有项目收费

  • 国内一般使用码云gitee

    • 国内访问速度快

    • 托管私有项目免费

  • 公司中使用gitlab或者svn来搭建

创建步骤

 a.打开码云 ,注册登录

 b.创建public工程

 

 c.新建项目

 


gitee_create_project2

 

 d.在虚拟机中生成ssh公钥(一直回车)

pyvip@VIP:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/pyvip/.ssh/id_rsa): 

 将公钥复制下来,粘贴至码云中 

 

 e.克隆项目到本地

 复制SSH链接

 


 

 克隆项目到虚拟机中

 


 

###二、创建虚拟环境

 1、在虚拟机上新建虚拟环境

# 查询系统本系统中安装的python版本
ls -l /usr/bin/python*

 


python版本

 

# 系统中python默认版本为python2.7,可以将其修改为python3
# 第一步:先删除python
rm -rf /usr/bin/python # 第二步:创建软链接 ln -s /usr/bin/python3 /usr/bin/python # 第三步:查看python版本是否修改为python3 python -V 
# 如果已经将python改为python3版本,可以直接创建虚拟环境
mkvirtualenv 虚拟环境名字
# 如果未修改python版本,则创建虚拟环境时需要指定python版本
mkvirtualenv 虚拟环境名字 -p python3

 2、在pycharm中新建项目,取名、添加虚拟机上的虚拟环境

 


项目取名

 

 


添加SSH服务器

 

 


添加SSH密码

 

 


添加解释器目录

 

解释器的路径一般为:

/home/pyvip/.virtualenvs/youkou_env/bin/python3.6

 


解释器路径

 

添加远程虚拟机上的项目路径:

 


添加远程项目路径

 

选择从码云上克隆到虚拟机中的项目路径:

 


指定项目路径

 

修改Host和端口(如果在阿里云服务器上创建工程,Host设置为0.0.0.0):

 


修改Host和端口

 

设置本地与服务器代码自动同步:

 


click confifguration

 

 


set_default_server

 

 


click options

 

 


auto upload

 

由于没有使用django默认的admin用户认证系统,所以会报错。**

 


admin error

 

修改settings.py文件,将Host地址添加到ALLOWED_HOSTS列表中。如果为空,只能通过127.0.0.1或者localhost来访问服务器。

 


修改ALLOWS_HOST

 

大功告成,配置成功!

 


success

 

三、其他配置

修改 settings 文件

1.配置模板文件

在项目根目录新建一个templates文件夹,用于存放模版文件。

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR, 'templates')],'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], # 将函数内置到模板中 https://docs.djangoproject.com/en/2.1/topics/templates/ 'builtins': ['django.templatetags.static'], }, }, ] 
2.配置mysql数据库

a.连接虚拟机中的mysql,使用root用户登录:

mysql -uroot -p

b.创建数据库

mysql> CREATE DATABASE youkou CHARSET=utf8;
Query OK, 0 rows affected (0.13 sec)

c.创建用户

mysql> CREATE USER dj_user IDENTIFIED BY 'pythonvip';
Query OK, 0 rows affected (0.00 sec) 

d.用户授权

mysql> GRANT ALL PRIVILEGES ON youkou.* TO 'dj_user'@'%'; mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.20 sec) 

e.加载数据库配置

方法一:直接在settings.py文件中添加数据库配置信息。

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql',   # 数据库引擎'NAME': 'youkou', # 数据库名称 'USER': 'dj_user', # 数据库登录用户名 'PASSWORD': 'pythonvip', # 密码 'HOST': '172.16.32.101', # 数据库主机IP,如保持默认,则为127.0.0.1 'PORT': 3306, # 数据库端口号,如保持默认,则为3306 } } 

方法二:将数据库配置信息存到一个文件中,在settings.py文件中将其引入。(推荐)

​ 新建数据库配置文件my.cnf(名字随意选择)

 


创建my.cnf

 

​ 在settings.py文件中引入my.cnf文件

DATABASES = {# 方法二:'default': {'ENGINE': 'django.db.backends.mysql','OPTIONS': { 'read_default_file': 'utils/dbs/my.cnf', }, } } 

​ ⚠️mysql数据库配置完成之后,运行django程序会报如下错误,官方推荐安装mysqlclient 1.3.7以上版本,也可以安装pymysql,并且需要在settings.py文件所在包中的__init__.py中导入pymysql。

 


error mysqlclient

 

方法一:安装mysqlclient,进入到虚拟机执行如下命令:

pyvip@VIP:~$ sudo apt-get update    # 更新ubuntu包
pyvip@VIP:~$ sudo apt-get install default-libmysqlclient-dev    # 安装依赖
pyvip@VIP:~$ workon youkou_env   # 进入到虚拟环境
(youkou_env) pyvip@VIP:~$ pip install -i https://pypi.douban.com/simple mysqlclient 

方法二:安装pymysql,并且需要在settings.py文件所在包中的__init__.py中导入pymysql

(youkou_env) pyvip@VIP:~$ pip install -i https://pypi.douban.com/simple pymysql 

 


import pymysql

 

3.配置redis缓存

用于存放用户session信息、短信验证码以及图片验证码信息等。

# 在虚拟机中安装django-redis
pip install -i https://pypi.douban.com/simple django-redis
# 在settings.py文件中指定redis配置
CACHES = {"default": {"BACKEND": "django_redis.cache.RedisCache","LOCATION": "redis://127.0.0.1:6379/0", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } }, } 
4.配置日志器

用于记录系统运行过程中的各种日志信息。

在项目根目录中创建一个logs文件夹,用于存放日志文件

# 在setting.py文件中加入如下配置:
# 配置日志器,记录网站的日志信息
LOGGING = {# 版本'version': 1, # 是否禁用已存在的日志器 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s' }, 'simple': { 'format': '%(levelname)s %(module)s %(lineno)d %(message)s' }, }, 'filters': { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', }, }, 'handlers': { 'console': { 'level': 'DEBUG', 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', 'formatter': 'simple' }, 'file': { 'level': 'INFO', 'class': 'logging.handlers.RotatingFileHandler', 'filename': os.path.join(BASE_DIR, "logs/dj_youkou.log"), # 日志文件的位置 'maxBytes': 300 * 1024 * 1024, 'backupCount': 10, 'formatter': 'verbose' }, }, 'loggers': { 'django': { # 定义了一个名为django的日志器 'handlers': ['console', 'file'], 'propagate': True, 'level': 'INFO', # 日志器接收的最低日志级别 }, } } 
5.时区配置
# 修改语言
LANGUAGE_CODE = 'zh-hans'
# 修改时区
TIME_ZONE = 'Asia/Shanghai'USE_I18N = True USE_L10N = True # utc 时间 USE_TZ = True 
6.修改静态文件配置

​ 在项目根目录中创建一个static目录,用于存放静态文件(css、js、image、font等)

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static'),   # 用于存放静态文件
]
7.创建应用

​ a.本项目主要由4个模块组成,分别为新闻文章模块、课程视频播放模块、文档下载模块、用户管理模块等。在项目根目录下创建一个apps目录用于存放各个子应用。

# 在虚拟机中,cd进入apps
cd apps
python ../manage.py startapp news1
python ../manage.py startapp course python ../manage.py startapp doc python ../manage.py startapp users 

​ b.在settings.py文件中,加入如下配置

import sys# 创建应用之后,把apps目录加入到sys.path中
sys.path.insert(0, BASE_DIR)
sys.path.insert(1, os.path.join(BASE_DIR, 'apps')) 

​ c.分别在apps文件夹和项目根目录文件夹上右击,加入到Sources Root根中,优化导入路径。

 


add source root

 

​ d.将应用加入到INSTALLED_APPS列表中

INSTALLED_APPS = [# ...'users',  # 将应用加入到INSTALLED_APPS列表中'course','doc', 'news1', ] 

四、将项目推送到码云

  • 在虚拟机中配置代码推送人身份信息(填写自己的名字和邮箱地址)

    # 填写你的邮箱地址
    (youkou_env) pyvip@VIP:~/dj_youkou$ git config --global user.email "myemail@163.com" 
    # 填写你的用户名
    (youkou_env) pyvip@VIP:~/dj_youkou$ git config --global user.name "Youkou" 
  • 将代码推送至本地仓库(虚拟机中)

    # 工作区添加到暂存区
    (youkou_env) pyvip@VIP:~/dj_youkou$ git add .
    
    # 暂存区提交到仓库区,-m为添加注释信息
    (youkou_env) pyvip@VIP:~/dj_youkou$ git commit -m "项目初始化,完成settings中数据库、模板、时区、静态目录指定等。" 
  • 将代码推送至远程仓库(码云上)

    # 将代码推送到远程仓库
    (youkou_env) pyvip@VIP:~/dj_youkou$ git push
    

    码云中就出现了,你的本次写的代码。

     


    push gitee

     

###五、作业

    1. 项目环境搭建好,把运行结果截图上传

    2. 将代码推送到码云,将截图删除

    3. 记第下一天的5个英语单词

转载于:https://www.cnblogs.com/gdwz922/p/10036353.html

这篇关于潭州课堂25班:Ph201805201 django 项目 第三课 码云注册,django项目 (课堂笔记)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/299606

相关文章

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.