实习生的Django[1]
尽管学期尚未结束,暑假尚未到来,可是大三的同学非常多已经和我一样開始实习或者实习一段时间了。我仅仅面试了一间数据挖掘的公司的研发部,还算顺利通过。
来这里实习后,由于网络原因,昨天没有刷题也没有写BLOG,一切都在准备中,公司要我们做的项目对于我来说是非常困难的,详细我也不能说是什么,大概就是与大数据和python打交道吧,带我们的技术人员让我们学习Django,于是就有了这一系列文章了,这是第一篇。
由于我的博客没什么人看,除了你之外,所以我也不用操心写得不官方不正式。
第一天,由于要搭建我的环境(刷成fedora20,再配置一下我之前写的shell脚本,alias,以及vim,状态了一大堆东西python之类的东西),所以工作的时间非常短呢,今天的任务非常easy,就是: Django概念+搭建Django环境+Hello World!)
什么是Django?
不能且不想说得太官方,不然非常多像我这种新手会关掉这个无聊的博客了.
我们简单理解为:假如Web开发就是画一个直线,Django就是一把尺子。(Django就是Web开发框架,框架就是所谓的“尺子”了,自己YY吧)
搭建Django环境
首先,假设你是一个Windows的用户,那么非常不幸,看到这里才发现作者居然是个linux脑残粉,一无所获地离开再JJYY两句。
这学期的环境一直在变,之前在实验室是centos,自己一直用ubuntu,来到公司是fedora 20。
step1: 你要确保你有python,我的是2.7。假设你没有python,那真的是非常奇怪的事情了,而且自己sudo yum install python!
step2:sudo yum install django
step3:找到你的django/bin目录,我的电脑路径是/usr/lib/python2.7/site-packages/django/bin,再拷贝到你的bin下,
sudo cp /usr/lib/python2.7/site-packages/django/bin/django-admin.py ~/bin/.
来到这里前期工作就完毕了。
神一样的HelloWorld
我一直在想Brian Kernighan教他孩子说话的第一句不是'dad,mom'之类的,而是‘Hello!World!’!!!!
秉承传统,这个HelloWorld比起C++难多了...(实际上可能是作者太蠢了)
首先,我们须要创建project,我们在一个其它人有訪问权限的目录创建一个目录Workspace,进入Worksapce后,输入命令
django-admin.py startproject mysite(假设你出现命令找不到,请參考搭建好开发环境的第三步)
之后,正常情况下,会出现mysite,之后再进入会出现manage.py
mysite (还是mysite目录),mysite里面有
然后我们淡定地进入mysite,发现里面有__init__.py ,settings.py, urls.py,
wsgi.py,好多东西!!只是我们眼下仅仅须要用到urls.py
以下我们在mysite中(有__init__.py什么的那个!)创建一个views.py
引入HttpResponse而且写一个很easy的hello函数
#!/usr/bin/env python
# coding=utf-8
from django.http import HttpResponse def hello(request):
return HttpResponse("Hello World!")
之后保存退出,改动urls.py
发现里面是这种:
from django.conf.urls import patterns, include, url from django.contrib import admin admin.autodiscover() urlpatterns = patterns('',
# Examples:
# url(r'^$', 'hellow.views.home', name='home'), # url(r'^blog/', include('blog.urls')),
url(r'^admin/', include(admin.site.urls)), )
我们稍作改动:
1.引入我们刚刚的hello函数。
2.改动patterns
from django.conf.urls import patterns, include, url
from django.contrib import admin
from views import hello #Here!!!
admin.autodiscover() urlpatterns = patterns('',
# Examples:
# url(r'^$', 'hellow.views.home', name='home'), # url(r'^blog/', include('blog.urls')),
#url(r'^admin/', include(admin.site.urls)),
(r'^helloworld/',hello) #Here!!!
)
假设这么简单的正則表達式都看不懂的话...请自行搜索..
来到这里,就OK了
请!回到有manage.py的文件夹,输入命令
python manage.py runserver
十分长的命令~建议要弄个alias!假设你不知道什么是alias,那么你还是用回windows吧!
好了,来到这里,请在你的浏览器中输入
http://127.0.0.1:8000/helloworld/
Hello World!
来到这里,本文就结束了,没想到你能坚持到这里,我给你点赞。
实习生的Django[1]的更多相关文章
- 华为测试大牛Python+Django接口自动化怎么写的?
有人喜欢创造世界,他们做了开发者:有的人喜欢开发者,他们做了测试员.什么是软件测试?软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了,这会让他们生出一种救世主的感觉,拯救了用户,也就拯救者 ...
- 测试开发:Python+Django实现接口测试工具
Python+Django接口自动化 引言: 最近被几个公司实习生整自闭了,没有基础,想学自动化又不知道怎么去学,没有方向没有头绪,说白了其实就是学习过程中没有成就感,所以学不下去.出于各种花里胡哨的 ...
- face++算法工程实习生面试
2018-01-11 算法工程实习生 自动化工具链方面 面试的知识点非常仔细,十分检验基本功底 1.自我介绍 2.算法题,leetcode 第一题 两数之和 问python中数组和字典的查找时间复杂 ...
- Django中的增删改查
1.model 假设我们的model如下: 某个JobType下有很多Job. class JobType(models.Model): name = models.CharField(max_len ...
- 异步任务队列Celery在Django中的使用
前段时间在Django Web平台开发中,碰到一些请求执行的任务时间较长(几分钟),为了加快用户的响应时间,因此决定采用异步任务的方式在后台执行这些任务.在同事的指引下接触了Celery这个异步任务队 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- django server之间通过remote user 相互调用
首先,场景是这样的:存在两个django web应用,并且两个应用存在一定的联系.某些情况下彼此需要获取对方的数据. 但是我们的应用肯经都会有对应的鉴权机制.不会让人家随随便便就访问的对吧.好比上车要 ...
- Mysql事务探索及其在Django中的实践(二)
继上一篇<Mysql事务探索及其在Django中的实践(一)>交代完问题的背景和Mysql事务基础后,这一篇主要想介绍一下事务在Django中的使用以及实际应用给我们带来的效率提升. 首先 ...
- Mysql事务探索及其在Django中的实践(一)
前言 很早就有想开始写博客的想法,一方面是对自己近期所学知识的一些总结.沉淀,方便以后对过去的知识进行梳理.追溯,一方面也希望能通过博客来认识更多相同技术圈的朋友.所幸近期通过了博客园的申请,那么今天 ...
随机推荐
- subline text 3的模版设置
文件目录在这个地方,然后用St3打开,进行模版修改就行了
- centos之tomcat安装
1.环境说明 系统:centos, 2.6.32-573.el6.x86_64; tomcat: apache-tomcat-7.0.68 2.下载文件并上传 下载apache-tom ...
- javascript - 工作笔记 (事件绑定)
背景: 目前所做的项目,只能使用的是原生的javascript.对于javascript的事件绑定想必大家都懂得语法: 1,在标签中使用属性调用方法:<div onclick="AAA ...
- Syslog Cisco Incident
http://www.cisco.com/web/about/security/intelligence/identify-incidents-via-syslog.html
- FPC Trace Pattern Layout Design Notices (軟板線路設計注意事項)
整理了一些軟板(FPCB/Flex Cable)製造廠關於線路設計的要求 (Design Guide)以避免應用上的品質問題. 1.Relationship between Through Hole, ...
- iOS6和iOS7代码的适配(2)——status bar
用Xcode5运行一下应用,第一个看到的就是status bar的变化.在iOS6中,status bar是系统在处理,应用中不需要考虑这部分,iOS7之后是应用在处理,每个ViewControlle ...
- oracle查看所有表及字段
oracle表设计 http://blog.csdn.net/lanpy88/article/details/7580820 Oracle查看所有表和字段 获取表: select table_name ...
- 汉诺塔III 汉诺塔IV 汉诺塔V (规律)
汉诺塔III Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- Leetcode:Swap Nodes in Pairs 单链表相邻两节点逆置
Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2-& ...
- 安卓activity捕获返回button关闭应用的方法
安卓activity捕获返回button关闭应用的方法 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { //按下键盘 ...