尽管学期尚未结束,暑假尚未到来,可是大三的同学非常多已经和我一样開始实习或者实习一段时间了。我仅仅面试了一间数据挖掘的公司的研发部,还算顺利通过。

来这里实习后,由于网络原因,昨天没有刷题也没有写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]的更多相关文章

  1. 华为测试大牛Python+Django接口自动化怎么写的?

    有人喜欢创造世界,他们做了开发者:有的人喜欢开发者,他们做了测试员.什么是软件测试?软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了,这会让他们生出一种救世主的感觉,拯救了用户,也就拯救者 ...

  2. 测试开发:Python+Django实现接口测试工具

    Python+Django接口自动化 引言: 最近被几个公司实习生整自闭了,没有基础,想学自动化又不知道怎么去学,没有方向没有头绪,说白了其实就是学习过程中没有成就感,所以学不下去.出于各种花里胡哨的 ...

  3. face++算法工程实习生面试

    2018-01-11 算法工程实习生  自动化工具链方面 面试的知识点非常仔细,十分检验基本功底 1.自我介绍 2.算法题,leetcode 第一题 两数之和 问python中数组和字典的查找时间复杂 ...

  4. Django中的增删改查

    1.model 假设我们的model如下: 某个JobType下有很多Job. class JobType(models.Model): name = models.CharField(max_len ...

  5. 异步任务队列Celery在Django中的使用

    前段时间在Django Web平台开发中,碰到一些请求执行的任务时间较长(几分钟),为了加快用户的响应时间,因此决定采用异步任务的方式在后台执行这些任务.在同事的指引下接触了Celery这个异步任务队 ...

  6. 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...

  7. django server之间通过remote user 相互调用

    首先,场景是这样的:存在两个django web应用,并且两个应用存在一定的联系.某些情况下彼此需要获取对方的数据. 但是我们的应用肯经都会有对应的鉴权机制.不会让人家随随便便就访问的对吧.好比上车要 ...

  8. Mysql事务探索及其在Django中的实践(二)

    继上一篇<Mysql事务探索及其在Django中的实践(一)>交代完问题的背景和Mysql事务基础后,这一篇主要想介绍一下事务在Django中的使用以及实际应用给我们带来的效率提升. 首先 ...

  9. Mysql事务探索及其在Django中的实践(一)

    前言 很早就有想开始写博客的想法,一方面是对自己近期所学知识的一些总结.沉淀,方便以后对过去的知识进行梳理.追溯,一方面也希望能通过博客来认识更多相同技术圈的朋友.所幸近期通过了博客园的申请,那么今天 ...

随机推荐

  1. 项目从Codeigniter 2.2升级至 Codeigniter 3.0的一些注意事项

    1. 替换掉system目录下所有的文件和文件夹,以及替换掉index.php 2. controllers和models中的文件首字母都需要改成大写:application.php -> Ap ...

  2. CentOS rc.local 不执行的问题

    centos7 开机/etc/rc.local 不执行的问题 时间:2015-02-09 00:54来源:blog.51cto.com 作者:“闲潭小筑” 博客, 举报 点击:次 最近发现centos ...

  3. 在Windows平台下安装与配置Memcached的方法分享

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度.Memcached ...

  4. codechef Chef and The Right Triangles 题解

    Chef and The Right Triangles The Chef is given a list of N triangles. Each triangle is identfied by ...

  5. Nutch

    nutch 插件开发[资料整理]:http://my.oschina.net/cloudcoder/blog/472915 Nutch2.3+Mongodb+ElasticSearch:http:// ...

  6. 使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处

    使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处   作者:Arthur V. English 出处:IBM   本文内容包括: 背景 业务用例模型与系统用例模型有什么相似之处? 业 ...

  7. Unity StrangeIoc框架 (一)

    最近想项目中需要使用这个架构  因此 上网看了很多资料摸索   但是对于初学者来说大多数的资料不是那么容易理解 而且文档也是英文的阅读起来有点吃力  所以记录一下自己阅读的过程  方便以后翻阅和跟我一 ...

  8. Mysql 死锁问题

    Innodb锁系统(4) Insert/Delete 锁处理及死锁示例分析 http://mysqllover.com/?p=431 关于innodb死锁 http://afei2.sinaapp.c ...

  9. Spring Jdbc使用like模糊查询

    public List<WfConfigMVO> queryList(WfConfigMVO wfConfig) throws SysException { StringBuffer sq ...

  10. Toast的替代者Snackbar

    在Android design support library中,SnackBar的使用: Part 2 – Welcome Snackbar, Goodbye Toast! BY PARESH MA ...