1注册应用(setting)
2尝试启动服务器看看目前是否有问题
3与postgis的配置 (setting)
生成迁移文件
执行迁移文件生成表
去docker查看表
生成一些假数据
至此,Django+RDF项目完成,并能返回JSON数据
<meta charset="UTF-8">
至此,脚手架配置完成,且前后端分别部署(nodejs和django服务器),并且能够通信。 这两天又试着在一个新平台 Pythonanywhere 上部署了项目,现在此记录一下过程,主要是强化一下记忆,要是能帮上其他人就再好不过了。
我想程序员对这个网站再熟悉不过了,我也不多介绍了,在整个过程中,GitHub的作用是当做一个中介平台,我先把本地的项目push到GitHub的仓库里,然后在第三方服务器上进行克隆和部署。
我这里就直接截取一段维基上的介绍吧
PythonAnywhere is an online Integrated Development Environment (IDE) and Web hosting service based on the Python programming language[1] It provides in-browser access to server-based Python and Bash Command-line interfaces, along with a code editor with Syntax highlighting Program files can be transferred to and from the service using the user's browser Web applications hosted by the service can be written using any WSGI-based application framework
首先注册一个免费账号,虽然功能有限,但是作为实验够用了,登陆之后打开一个bash,然后克隆GitHub的项目
然后可以创建虚拟环境,这样可以并存多个项目。接着安装Django。接着运行
注意环境里Python2和python3两个版本,根据你的需要使用,接下来就可以发布项目了,注意不要选择默认的Django设置,要选择手动的设置。
接下来就该配置wsgi文件了,wsgi实际上是一个协议规范,规定了web服务器和web应用之间的接口。
配置好以后reload项目,如果正常的话应该就可以启动了。如果没有正常启动,那么你应该看看你的日志文件。
这是一个简单的部署活动,但是其他的项目也八九不离十,重要的是这样一种开发方式,本地开发,测试好以后直接push到生产环境。安装软件
安装 Python 27、PyCharm、pip(Python包管理工具)、Django ( pip install Django)
部署
PyCharm 新建Django工程
完成后,其目录如下:
子目录MyDjangoProject下表示工程的全局配置,分别为setttingspy、urlspy和wsgipy,其中setttingspy包括了系统的数据库配置、应用配置和其他配置,urlspy则
表示web工程Url映射的配置。
子目录student则是在该工程下创建的app,包含了modelspy、testspy和viewspy等文件
templates目录则为模板文件的目录
managepy是Django提供的一个管理工具,可以同步数据库等等
启动
创建完成后,就可以正常启动了。点击Run 按钮,启动时报错了:
Traceback (most recent call last):
File "D:/workspace/MyDjangoProject/managepy", line 10, in <module>
execute_from_command_line(sysargv)
File "D:\Python27\lib\site-packages\django\core\management\__init__py", line 338, in execute_from_command_line
utilityexecute()
File "D:\Python27\lib\site-packages\django\core\management\__init__py", line 312, in execute
djangosetup()
File "D:\Python27\lib\site-packages\django\__init__py", line 18, in setup
appspopulate(settingsINSTALLED_APPS)
File "D:\Python27\lib\site-packages\django\apps\registrypy", line 89, in populate
"duplicates: %s" % app_configlabel)
djangocoreexceptionsImproperlyConfigured: Application labels aren't unique, duplicates: admin
应该是admin配置冲突了,打开setttingspy文件,发现admin配置重复了
INSTALLED_APPS = (
'djangocontribadmin',
'djangocontribauth',
'djangocontribcontenttypes',
'djangocontribsessions',
'djangocontribmessages',
'djangocontribstaticfiles',
'djangocontribadmin',
'student',
)
注释掉其中一行后(为什么会有这个问题,估计是个bug),重新启动,ok
web工程添加页面
此时,我们尚没有写一行代码,程序就duang跑起来了! 快添加一个Hello World的页面吧。
打开student/viewspy文件,输入以下内容
def sayHello(request):
s = 'Hello World!'
current_time = datetimedatetimenow()
html = '<html><head></head><body><h1> %s </h1><p> %s </p></body></html>' % (s, current_time)
return >
不过,既然接受了Python的简单易用和快速开发优势,作为tradeoff,就要学会接受和处理Python的一些缺点。用django作数据服务器两年多,确实会有一些性能问题。
1异步django的>
2缓存和队列用ZeroMQ、Memcached来做缓存和队列就解决了。
3影响性能的函数如果真的有CPU密集型的函数影响性能,可以编译成C来解决性能问题,一些矩阵 *** 作也可以通过numpy来解决
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)