Git Product home page Git Product logo

deeru's Introduction

DeerU Logo

快速开始文档贡献代码

version - v2.0.0 license - GPL V3

DeerU is a content management system, used for blogs.

DeerU 是一个开源博客系统,它基于Django开发。

它提供了丰富的json数据接口(需安装api插件),前端开发人员可以不依赖Django模板,方便的开发主题,实现前后端分离。 (不再继续维护)


V2.0.0 发布

DeerU 2.0 开始定位为可供二次开发的博客系统

基于此定位,此项目将为有django、前端经验开发者提供可自行扩展博客系统。

此项目今后将只提供博客基础功能更新、安全性更新、可扩展性更新,除此之外的功能(比如主题、cdn等)需要开发者自行开发。
更多内容 >> 2.0更新说明 | 1.x升级2.0指南

依赖

  • Python 3.6+
  • pip 10+
  • git
  • libjpeg,zlib -- pillow包的依赖
    • ubuntu: apt-get install libjpeg8-dev zlib1g-dev libfreetype6-dev
    • centos: yum -y install python-devel zlib-devel libjpeg-turbo-devel

目录

安装

安装之前建议配置虚拟环境

    pip install virtualenv
    virtualenv --no-site-packages deeru_env
    source deeru_env/bin/activate
  • pip安装
    pip install DeerU
    deeru-admin install deeru
  • 手动安装(不推荐)
    git clone https://github.com/gojuukaze/DeerU.git
    cd DeerU
    pip install -r requirements.txt
    
    # 创建 deeru/settings_local.py , deeru/urls_local.py ,具体参考文档

初始化

  • 运行下面命令初始化项目,注意:如果你更改了数据库的配置,或者修改了主题的静态文件 则需要再次运行初始化
    cd DeerU # 如果你没进入工程目录先进入
    python manage.py init_deeru

运行

  • 以debug模式运行
    python manage.py runserver 0.0.0.0:8000

license

DeerU使用 GNU General Public License v3.0 协议 ,你可以在遵循此协议的情况下免费使用DeerU

重要!!

需要注意的是,DeerU本身是免费的,但后台管理使用了富文本编辑器froala,其扩展插件并不免费,你可以在以下链接中查看收费信息:

https://github.com/froala/django-froala-editor#license

https://froala.com/wysiwyg-editor/pricing

你可以自己更换其他编辑器(参照文档 富文本编辑器

截图

首页

DeerU Logo

文章详情

DeerU Logo

admin

DeerU Logo

admin2

DeerU Logo

手机1

DeerU Logo

手机2

DeerU Logo

捐赠 / Sponsor

开源不易,如果你觉得对你有帮助,求打赏个一块两块的

deeru's People

Contributors

dependabot[bot] avatar gojuukaze avatar jiehuisun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deeru's Issues

新增配置时报错

操作路径:admin/配置/增加配置
报错内容:


Request Method: | GET
-- | --
http://localhost:8000/admin/app/config/add/
3.0.8
TypeError
'NoneType' object is not subscriptable
D:\MrDP\Butterfly\app\ex_fields\widgets.py in render, line 60
D:\Develop\Pyenv\Butterfly\Scripts\python.exe
3.8.4
['D:\\MrDP\\Butterfly',  'C:\\Program Files\\JetBrains\\PyCharm Community Edition '  '2019.3.1\\plugins\\python-ce\\helpers\\pydev',  'D:\\MrDP\\Butterfly',  'C:\\Program Files\\JetBrains\\PyCharm Community Edition '  '2019.3.1\\plugins\\python-ce\\helpers\\third_party\\thriftpy',  'C:\\Program Files\\JetBrains\\PyCharm Community Edition '  '2019.3.1\\plugins\\python-ce\\helpers\\pydev',  'C:\\Users\\ZhongWei\\AppData\\Local\\JetBrains\\PyCharmCE2020.2\\cythonExtensions',  'D:\\Develop\\Pyenv\\Butterfly\\Scripts\\python38.zip',  'c:\\python38\\DLLs',  'c:\\python38\\lib',  'c:\\python38',  'D:\\Develop\\Pyenv\\Butterfly',  'D:\\Develop\\Pyenv\\Butterfly\\lib\\site-packages',  'D:\\Develop\\Pyenv\\Butterfly\\lib\\site-packages\\django_editormd-0.4.1-py3.8.egg',  'D:\\Develop\\Pyenv\\Butterfly\\lib\\site-packages\\django_choices_enums-1.0.3-py3.8.egg']
星期一, 3 八月 2020 12:37:28 +0800

image

安装出错

pip install DeerU
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Processing /Users/semwan/Library/Caches/pip/wheels/b3/8f/4c/b4f221d095bb5586c3e6ea3f9345e27865af23f476a9a47d73/DeerU-2.0.1-py3-none-any.whl
Installing collected packages: DeerU
Successfully installed DeerU-2.0.1

安装执行 deeru-admin install deeru.py 时提示错误:
Traceback (most recent call last):
File "/Users/semwan/.virtualenvs/DeerU/bin/deeru-admin", line 5, in
from deeru_cmd.bin.deeru_admin import run
File "/Users/semwan/.virtualenvs/DeerU/lib/python3.7/site-packages/deeru_cmd/bin/deeru_admin.py", line 8, in
from django.core import management
ModuleNotFoundError: No module named 'django'

mysql初始化失败

配置文件:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file': '/www/wwwroot/DeerU/my.cnf',
},
}
}
my.cnf文件

my.cnf 文件

[client]
database = deeru
user = deeru
password = z4i
default-character-set = utf8mb4

报错

初始化中:
同步数据库修改 ...
同步数据库修改 ... [失败],更多信息查看 ./log/init.log
Traceback (most recent call last):
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
self.connect()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 195, in connect
self.connection = self.get_new_connection(conn_params)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 227, in get_new_connection
return Database.connect(**conn_params)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/MySQLdb/init.py", line 84, in Connect
return Connection(*args, **kwargs)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/MySQLdb/connections.py", line 179, in init
super(Connection, self).init(*args, **kwargs2)
MySQLdb._exceptions.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: NO)")

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "./manage.py", line 28, in
execute_from_command_line(sys.argv)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/init.py", line 381, in execute_from_command_line
utility.execute()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/init.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
self.execute(*args, **cmd_options)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/www/wwwroot/DeerU/app/management/commands/init_deeru.py", line 53, in handle
management.call_command('migrate', stdout=f)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/init.py", line 148, in call_command
return command.execute(*args, **defaults)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/base.py", line 83, in wrapped
res = handle_func(*args, **kwargs)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 87, in handle
executor = MigrationExecutor(connection, self.migration_progress_callback)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/migrations/executor.py", line 18, in init
self.loader = MigrationLoader(self.connection)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/migrations/loader.py", line 49, in init
self.build_graph()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/migrations/loader.py", line 212, in build_graph
self.applied_migrations = recorder.applied_migrations()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 73, in applied_migrations
if self.has_table():
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 56, in has_table
return self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor())
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 256, in cursor
return self._cursor()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 233, in _cursor
self.ensure_connection()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
self.connect()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/utils.py", line 89, in exit
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
self.connect()
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/base/base.py", line 195, in connect
self.connection = self.get_new_connection(conn_params)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 227, in get_new_connection
return Database.connect(**conn_params)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/MySQLdb/init.py", line 84, in Connect
return Connection(*args, **kwargs)
File "/www/wwwroot/DeerU/DeerU_venv/lib/python3.6/site-packages/MySQLdb/connections.py", line 179, in init
super(Connection, self).init(*args, **kwargs2)
django.db.utils.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: NO)")

bug 'Category' object is not iterable

Request Method: GET
http://localhost:8000/category/1
2.0.3
TypeError
'Category' object is not iterable
/home/lzh/work/py_proj/deeru_env/lib/python3.6/site-packages/django/template/defaulttags.py in render, line 167
/home/lzh/work/py_proj/deeru_env/bin/python
3.6.6
['/home/lzh/work/py_proj/deeru', '/home/lzh/work/py_proj/deeru_env/lib/python36.zip', '/home/lzh/work/py_proj/deeru_env/lib/python3.6', '/home/lzh/work/py_proj/deeru_env/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/lzh/work/py_proj/deeru_env/lib/python3.6/site-packages']
星期一, 19 十一月 2018 17:05:24 +0800

deeru/base_theme/templates/base_theme/aside_right.html, error at line 35

使用mysql初始化时报错sql语法问题, sqlite3正常

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "manage.py", line 28, in
execute_from_command_line(sys.argv)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/init.py", line 381, in execute_from_command_line
utility.execute()
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/init.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
self.execute(*args, **cmd_options)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/Application/blog-python/app/management/commands/init_deeru.py", line 53, in handle
management.call_command('migrate', stdout=f)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/init.py", line 148, in call_command
return command.execute(*args, **defaults)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/base.py", line 83, in wrapped
res = handle_func(*args, **kwargs)
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 234, in handle
fake_initial=fake_initial,
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/db/migrations/executor.py", line 91, in migrate
self.recorder.ensure_schema()
File "/Application/blog-python/.venv/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 69, in ensure_schema
raise MigrationSchemaMissing("Unable to create the django_migrations table (%s)" % exc)
django.db.migrations.exceptions.MigrationSchemaMissing: Unable to create the django_migrations table ((1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(6) NOT NULL)' at line 1"))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.