IT记录

日常学习、工作的点滴记录


  • 首页

  • categories

  • archive

  • tags

  • 搜索

Django3.0应用01:系统初始化

发表于 2021-10-09   |   分类于 Django   |   暂无评论

Django3.0应用01:系统初始化

Django3.0.10的基本安装安装

pip install django==3.0.10

安装pymysql,及cryptography

pip install pymysql cryptography

因为django2.2后mysql连接有问题,需要修改虚拟环境下的相关文件配置,文件在lib/python3.8/site-packages/django/db/backends/mysql目录下,注释掉base.py文件中的:

if version < (1, 3, 3):
      raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)

新建项目

django-admin startproject mycrm
python manage.py startapp crm

修改mycrm的配置文件

import pymysql
pymysql.install_as_MySQLdb()

修改settings.py文件,app中增加xadmin,crispy_forms,crm 数据库中配置改为:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'zhongyi',
        'USER': 'songyi',
        'PASSWORD': 'pasword',
        'HOST': '',
        'PORT': '',
        'client_encoding': 'UTF8',
        'default_transaction_isolation':'read committed',
    }
}

语言和时区进行修改

LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = True

安装xadmin

目前xadmin尚不支持Django 3.1,主要是因为自3.1开始,django.forms.forms中的django.forms.utils.pretty_name()和django.forms.boundfield.BoundField的兼容性导入已删除。
因GitHub速度较慢,将下载的xadmin下载到本地解压缩后,执行

pip install -r requirements.txt
python setup.py install

最新只能使用 fork 的版本,可以使用pip 安装

pip install xadmin-x

配置xadmin

将下载的xadmin文件夹上传到static目录下,修改crm/admin.py文件

import xadmin

修改urls.py文件,

from django.urls import path
import xadmin

urlpatterns = [
    path('xadmin/',xadmin.site.urls ),
]

修改settings.py文件中的路径:

import os,sys

sys.path.insert(0, os.path.join(BASE_DIR, 'static'))

安装django-ckeditor

pip install django-ckeditor

注册到setting.py中

'ckeditor',

创建超级用户

python manage.py migrate
python manage.py createsuperuser

Python版本升级后虚拟环境的升级

发表于 2021-10-09   |   分类于 Python   |   暂无评论

Python版本升级到3.8后,原通过python -m venv创建的虚拟环境的无法使用,需要进行升级。

python3 -m venv --upgrade ENV_DIR

升级之后变化依然很大,但pip可以使用,原先的配置文件依然存在。

Jupyterlab安装使用execute-time扩展

发表于 2021-10-09   |   分类于 Jupyterlab   |   暂无评论

Jupyterlab可以通过扩展管理面板,或者pip安装execute-time扩展。

jupyter labextension install jupyterlab-execute-time

安装后,需要进行手工设置,而不能单纯只是在扩展面板中设置为enable。
Settings->Advanced Settings Editor->Notebook: {"recordTiming": true}

使用django-ckeditor富文本编辑器

发表于 2021-10-09   |   分类于 Python   |   暂无评论

使用pip安装:

pip install django-ckeditor

注册到setting.py中

'ckeditor',

创建模型

from django.db import models
from datetime import datetime
from ckeditor.fields import RichTextField
    
class Article(models.Model):
    title = models.CharField(max_length=100,verbose_name="文章标题")
    content = RichTextField()    
    add_time = models.DateTimeField(default=datetime.now, verbose_name="添加时间")
    class Meta:
        verbose_name_plural = '文章'
        verbose_name = '文章' 
        ordering = ['-add_time']
    def __str__(self):
        return self.title

注册至admin中

import xadmin
from xadmin import views
from .models import College,Speciality,Article

class ArticleAdmin(object):
    list_display = ['title','content']


xadmin.site.register(Article,ArticleAdmin)

数据库迁移

$ python manage.py makemigrations
$ python manage.py migrate

完成后,可以进入系统使用。如果需要上传功能,需要进一步配置(http://yshblog.com/blog/193)。相比较DjangoUeditor,在基本功能设置上要快捷的多。

Typecho在ubuntu20.04下的安装要点

发表于 2021-10-09   |   分类于 系统应用   |   暂无评论

安装php7.4及sqplite

apt install php-fpm
apt install php-curl php-mbstring php-sqlite3

php-sqlite3如果未安装,安装时无法显示数据库选项

修改nginx配置

与WordPress不同,typecho需要手工修改配置文件进行rewrite,否则会提示404、405错误

 location / {
                 # First attempt to serve request as file, then
                 # as directory, then fall back to displaying a 404.
                 if (-f $request_filename/index.html){
                    rewrite (.*) $1/index.html break;
                 }
                 if (-f $request_filename/index.php){
                     rewrite (.*) $1/index.php;
                 }
                 if (!-f $request_filename){
                     rewrite (.*) /index.php;
                 }
                 try_files $uri $uri/ /index.php =404 ;
                 # Uncomment to enable naxsi on this location
                 # include /etc/nginx/naxsi.rules
         }
1...181920212223

一个高端大气上档次的网站

115 文章
5 分类
51 标签
GitHub 知乎 V2EX SF
© 2026 IT记录
Typecho
主题 - NexT.Pisces