网上科普有关“简述电子商务网站建设的设计过程是怎样的”话题很是火热,小编也是针对简述电子商务网站建设的设计过程是怎样的寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。
电子商务网站建设如何做,需要哪些步骤呢?下面简单说一下以下四步。
电子商务网站建设第一步,网站的规划与设计
电子商务网站算是一个比较复杂的系统,电商网站建设前就要想好需要有的功能。电子商务网站的规划也是建所有网站都需要做的事情,在规划设计中需要对网站进行整体的分析,明确网站的建设目标、确定网站的访问对象、网站提供的内容与服务、网站的域名、logo、网站风格和网站目录分类等内容,这一步也是电子商务网站网站建设成功的前提,因为所有的建设步骤都是按规划设计进行实施的。
电子商务网站建设第二步,站点的建设
电子商务网站规划设计以后,就开始进入网站的建设阶段,这一阶段主要有域名注册,网站配置,网页制作和网站测试的四个部分。除了电商网站测试,需要在其他三项完成之后才能进行之外,域名注册,网站配置和网页制作相对独立,可以同时进行。
电子商务网站建设第三步,网站发布
等电子商务网站建设完成之后,电子商务网站就可以在因特网中发布,正式上线之后,也就是用户可以通过域名直接对我的网站进行访问了。
电子商务网站建设第四步,管理与维护
网站的管理维护虽然是最好一个步骤,但是实际上从头至尾,只要网站没有停止运行,就一直在对电子商务网站进行管理维护,所以这一步,也是最为复杂的一步,网站管理主要是对网站进行安全,性能和内容上三个方面的管理。现在的网站建设为几大部分构成的,第一大点:,一是、网站策划;二是、网站美工;三是、关键词;四是、网站运营;而您所提的问题包含着网站建设的策划、美工、关键词部分。
首先网站建设的的策划部分要理解清楚以下观点:
1、目标客户的定位;2、盈利模式的定位;3、核心产品的定位;4、产品差异化的定位。
其次网站建设的美工部分需理解清楚:
1、网站的要清晰、文字要逻辑思维;
2、网站所采用的广告语是有哪些字如何去排版,字体大小是怎么样,颜色又是怎么样,如何去排才是最合理的;
3、网站看起来舒服,又让人感觉大气,考验美工设计师的功底了。
最后网站建设的关键词部分,提取适合自己行业的关键词:
1、看看自己的主营业务是什么?
2、看看自己的产品分类是怎么分的;
3、查看竞争对手是怎么设置关键词的;
4、自己的产品是做全国的还是区域性的,是做厂家的还是做批发的,或者是做加盟的还是做零售的,一定要定位好。
5、可利用百度后台、站长工具或者其他关键词分析工具去查找自己适合的关键词。
6、把这些关键词融入网站的版面的设计里面去,要根据搜索引擎的规律排版,如呈F 型排版,从做到右排版。
第二大点:就是网站的资料添加、网站的测评或者审核等,到最后发布。网站建设项目计划书的范例
一、建设网站前的市场分析
1、相关行业的市场是怎样的,市场有什么样的特点,是否能够在互联网上开展公司业务。
2、市场主要竞争者分析,竞争对手上网情况及其网站规划、功能作用。
3、公司自身条件分析、公司概况、市场优势,可以利用网站提升哪些竞争力,建设网站的能力(费用、技术、人力等)。
二、建设网站目的及功能定位
1、为什么要建立网站,是为了宣传产品,进行电子商务,还是建立行业性网站?是企业的需要还是市场开拓的延伸?
2、整合公司资源,确定网站功能。根据公司的需要和计划,确定网站的功能:产品宣传型、网上营销型、客户服务型、电子商务型等。
3、根据网站功能,确定网站应达到的目的作用。
4、企业内部网(intranet)的建设情况和网站的可扩展性。
三、网站技术解决方案
根据网站的功能确定网站技术解决方案。
1、采用自建服务器,还是租用虚拟主机。
2、选择操作系统,用unix,linux还是window2000/nt。分析投入成本、功能、开发、稳定性和安全性等。
3、采用系统性的解决方案(如ibm,hp)等公司提供的企业上网方案、电子商务解决方案?还是自己开发。
4、网站安全性措施,防黑、防病毒方案。
5、相关程序开发。如网页程序asp、jsp、cgi、数据库程序等。
四、网站内容规划
1、根据网站的目的和功能规划网站内容,一般企业网站应包括:公司简介、产品介绍、服务内容、价格信息、****、网上定单等基本内容。
2、电子商务类网站要提供会员注册、详细的商品服务信息、信息搜索查询、定单确认、付款、个人信息保密措施、相关帮助等。
3、如果网站栏目比较多,则考虑采用网站编程专人负责相关内容。 注意:网站内容是网站吸引浏览者最重要的因素,无内容或不实用的信息不会吸引匆匆浏览的访客。可事先对人们希望阅读的信息进行调查,并在网站发布后调查人们对网站内容的满意度,以及时调整网站内容。
五、网页设计
1、网页设计美术设计要求,网页美术设计一般要与企业整体形象一致,要符合ci规范。要注意网页色彩、的应用及版面规划,保持网页的整体一致性。
2、在新技术的采用上要考虑主要目标访问群体的分布地域、年龄阶层、网络速度、阅读习惯等。
3、制定网页改版计划,如半年到一年时间进行较大规模改版等。
六、网站维护
1、服务器及相关软硬件的维护,对可能出现的问题进行评估,制定响应时间。
2、数据库维护,有效地利用数据是网站维护的重要内容,因此数据库的维护要受到重视。
3、内容的更新、调整等。
4、制定相关网站维护的规定,将网站维护制度化、规范化。
七、网站测试
网站发布前要进行细致周密的测试,以保证正常浏览和使用。主要测试内容:
1、服务器稳定性、安全性。
2、程序及数据库测试。
3、网页兼容性测试,如浏览器、显示器。
4、根据需要的其他测试。
八、网站发布与推广
1、网站测试后进行发布的公关,广告活动。
2、搜索引掣登记等。
九、网站建设日程表
各项规划任务的开始完成时间,负责人等。
十、费用明细
各项事宜所需费用清单。
以上为网站规划书中应该体现的主要内容,根据不同的需求和建站目的,内容也会在增加或减少。在建设网站之初一定要进行细致的规划,才能达到预期建站目的。电子商务网站的设计主要分为两大流程:首先设计网站结构,主要包括网站布局、颜色、内容、框架等;然后进行网站开发,根据设计结果,运用编程语言进行开发,最终形成一个完整的网站。
一、网站结构的设计。
电子商务网站的设计关乎着网站的受欢迎程度,也直接影响着网站的整体建设。因此,网站设计的系统性、完善性和全面性是网站建设成败的关键所在。
二、网站整体的开发。
网站的开发是指从开始按照网站设计要求建设网站到网站对外发布之间的一次处理过程。该过程与传统的软件开发流程相同,主要包括实现、测试、文档、发布四个步骤。
1. 实现:使用网站开发工具及相关编程语言,编制页面及代码程序;实现Web数据库系统;根据信息结构的设计要求组织网站上需要展示的信息。
2. 测试:对初始建立的网站进行多方面的测试。
3. 文档:主要包括系统的开发文档,侧重功能描述及各模块间接口的描述。
4. 发布:是指网站对外发布,用户可使用浏览器通过Internet访问电子商务网站。我给你分成了四点:
1、定位网站,包括盈利模式,产品,目标人群;
2、购买空间和域名,并要在中国网管备案;
3、策划网站的首页以及各个页面的内容;
4、确定好网站的核心关键词,准备建站要用的资料。过程:
1、定位网站,包括盈利模式,产品,目标人群;
2、购买空间和域名,并要在中国网管备案;
3、策划网站的首页以及各个页面的内容;
4、确定好网站的核心关键词,准备建站要用的资料。
django如何后台运行(django运维)
第一步:明确建立web站点的目的、目标。
任何一个网站都要有存在的价值,这个价值确定了,网站建设的目标就出来了,千万不能跟风似的,为了建网站而建网站,那样肯定是个失败的没有人访问的网站。
网站的目标就是企业、公司为啥要建立这个网站:
宣传企业形象:通过web站点宣传企业形象是一个投资小、见效快的有效方式,如果能再通过一些网站宣传手段,可以收到意想不到的效果。
推广企业产品:网站还有一个重要功能就是宣传企业自己的产品,企业自己的产品的图象、介绍等等都可以通过网站宣传出去,便于用户直观的了解本企业的产品,一般企业形象宣传和产品宣传都会放到网站中。
销售工具:网站不止是市场推广的平台,也可以是销售平台,也就是常说的电子商务,是否采用网站作为销售工具取决于产品本身的特性,比如音像、图书等商品就适合在网上销售(商品形态不需要看到实物),而像齿轮、钢管等就不适合在网络上销售。
服务客户,作为服务网站,:网站还可以作为企业产品的售后服务系统,比如在线答疑、论坛答疑、产品资料、维护手册下载等等。
运营平台:网站本身是可运营的,比如电子商务或者诸如手机短信等的运营平台。
技术爱好:对于一些个人或者技术性公司,网站还可以是技术的试验田,技术爱好者展示的舞台。
第二步:规划域名
明确了网站建设的目标后,就需要我们为网站起一个名字,专业术语叫做网站域名。起一个好的域名对于网站的宣传是非常有帮助的,一般的原则是短小、上口,便于记忆,但是随着互联网的发展,好的便于记忆的域名基本都被注册了,而域名又不像人的名字是不允许重复的,所以起一个好的域名越来越困难。
网站域名规划的基本原则:
简短:成功的域名一般都是非常简单的,一般认为不超过5个单字的域名是一个好的选择,最多不要超过8个单字。
上口:域名是为了让用户记住,容易发音、上口的域名显然容易被记得,上面的域名就都符合这个原则
含义:有一个奇怪的现象,成功的网站的域名基本都是无含义的、新造的单词比如,由此一个域名是否有含义并不是成功的主要标准,而简短和上口反倒更加重要。
地域:网站的目标客户群的区域分布决定了域名选择的地域性,如网站的目标是国内客户,那么使用拼音是合适的,中国人是明白其含义的,但是如果是面向国外的用户就不是很得体了。
创造:目前简短、有含义的单词基本已经被注册完了,新申请域名基本只有创造一途(当然,如果有资金购买也是一个选择),通过自己丰富的想象去创造吧。一般的常用创造方法就是组合法,把几个单纯组合在一起产生个新的单词。
限制:域名的含义同公司的业务接近对于网站的推广有利,但也限制了公司业务的拓展。
一般企业宣传网站的域名都会选择采用公司的英文名称,如不幸此域名已经被注册,可以考虑在英文名称的基础上增加或者减少字母的方式;考虑更换后缀方式,如.com域名已被注册,可以考虑.cn域名,但这不是一个好方式(容易跟原有域名混淆,增加推广成本);
一般推广产品的网站可以考虑使用产品名称作为域名,产品名称也是网站域名。
一般综合性、运营的门户站点,去创造一个响亮的域名吧。
其实好的域名关键是简短、上口,简短是不要超过8个单字,最好5个以内,上口是音节少,有魄力,但是还要考虑地域,一些域名对中国人是个好发音的单词,但是对欧美就有困难了。
第三步:网站策划
基于网站的最终目标,网站需要一个策划过程,比如网站的色彩基调、网站的栏目设置等等,网站策划的目的是为了完成网站的目标而对网站的分类、分类下的内容等等的规划性工作。
具体包括的内容有:
网站整体风格的确认,一般主要是网站首页风格的确定。
色调:一般公司、企业有自己的CI设计的话,最好沿用原有CI设计中的元素,用以保证公司整体形象的统一,如果没有标准的CI设计,那么主色调就要看设计者的喜好了,不过传统企业采用蓝色系、红色系都比较适合,但一定要庄重,不要用太轻浮的颜色。或者根据自己产品的特点来选择色系,比如儿童用品可以用橘红等暖色系,花店可以用绿色等。游戏、摇滚音乐等需要特立独行的网站甚至可以用黑色系。总之,网站应该确立自己的一个主色调。
排版样式:目前主流的有才有800象素横宽的,也有采用1024象素横宽的,1024象素因为可用空间大所以越来越被用户所接受,但是需要考虑到你的目标用户是否还大量使用800×600分辩率的显示器,如果你是一个有关农业方面的网站,你的目标用户是大量农村的用户,考虑到他们使用的机器可能都比较落后,那么你最好还是使用800象素横宽的设计。
导航、内容等的排版方式:导航主要包括横排和竖排,内容主要是2栏式还是3栏式。
栏目规划:就是勾划出网站的栏目结构图,也叫SiteMap图,可用微软的Viso等工具来描绘出这些结构来,一般根据网站的总体定位来考虑栏目的设置,同时还要考虑是否有这些内容,不要贪大求全造成网站上线后很多栏目根本没有内容。栏目是为网站的运营目的服务的,比如网站是为了宣传公司的形象的,那么在主要栏目中包含一个“关于我们”就非常合适,但是如果网站的目标是运营的电子商务网站,“关于我们”就不应该放在主要的栏目中。
一些网站需要注意的点:
有一些网站喜欢在首页放置一些完全无关的内容,比如放置一个天气预报的栏目,就毫无意义,而且显得非常不专业。
有一些网站喜欢采用大量的flash,而且不经过压缩的使用,这样非常消耗带宽,而且一般用户在2-3秒无法打开你的页面就已经失去了兴趣,所以慎用过大的flash。
网站上线前一定要测试一下对于分辩率的支持的问题,目前用户端的机器的分辩率已经多样化了,有宽屏、高分辨率屏等等,需要测试您的网站是否在各种分辩率下都是可以浏览的。
不同浏览器的支持,对于面向公共的网站,您需要考虑不同浏览器的问题,比如对FireFox浏览器的支持等等。
这些都是在网站策划的时候需要考虑的问题。
第四步:硬件平台搭建
任何软件离不开硬件平台的支撑,网站系统也是如此。而网站除了传统的服务器外还需要公网带宽资源的保障。中小企业选择IDC(数据库中心)是一个比较好的选择,当然对于大型的企业或者运营单位自己建立一个小型的IDC,然后再单独租赁带宽也是一个选择。
选择合适的IDC后,需要确定的是采用主机托管方式还是采用虚拟主机(空间租赁)的方式。两种方式的优缺点大家可以在论坛中的其它主题中深入的了解,其主要是费用方面的问题,如果用户的网站是个测试的站点或者预计流量非常小的站点可以选择虚拟主机的方式,如果预算够建议还是采用主机托管的方式。
选择硬件平台还要考虑到自己的系统的问题,这在选择虚拟主机的时候是要先明确的,是否有支持用户网站系统的基础软件支持。
第五步:选择软件实现平台
建立网站本身的软件可以有2种方式,直接采用简单的HTML建立静态的网站,或者采用主流的几款内容发布系统。
HTML网站的好处是简单,费用低,当然缺点也是非常明显的更新过程相对复杂,时间长。对于一些简单的不需要更新(当然不需要更新的网站基本不存在)或者更新周期很长,对更新时间也要求不严格的网站可以采用。
其它大部分网站多应该选择成熟的内容发布系统,或者自己开发一套简单的内容发布系统来支持自己的网站。
第六步:Web页面开发
不论采用何种内容管理系统,都要在先期把静态页面开发出来,至少也要开发出大部分来,一般如果是自己开发的简单内容管理系统,可以页面制作和程序同步进行,也就是美术编辑和程序员共同配合工作。美术编辑在完成页面的HTML程序后由程序员加入jsp、asp、php等代码。这也是自己开发内容发布系统的弊端,因为没有完整的软件设计,基本是根据前台表现来做后台应用,每次修改美编和技术基本要混在一起改,互相影响,这些都不是好的软件开发模式。
如果采用商业版本的内容管理系统,一般都需要先做好静态页面(HTML页面),然后在其上通过标签等手段产生模版,被内容管理系统调用。
第七步:模版制作
模版是现有主流内容管理系统普遍采用的技术,无论是采用标签还是采用jsp等现有程序技术都是要把静态的HTML页面中需要变化的数据连接到数据库上,由后台内容管理系统管理数据库中的内容,以达到数据库中的内容能够方便快捷的显示在模版上。
主流的几款内容发布系统采用了更加容易被非技术人员理解的标签技术,通过在HTML中设置简单的标签即可完成动态模版的设计。摆脱了模版需要熟练程序员才能编写的问题。
第八步:系统上线
模版设计完成并调试好后就需要把整个系统搭建在前面提到的IDC中,也就是常说的系统上线。
系统上线最主要的工作是调试:
功能调试,开发环境和生产环境总是不完全一致的,需要在系统上线的过程中在进行一次完全的测试。
性能调试,对于生产环境各种参数的调整,以保证系统以最佳状态展现在用户面前
内容调试,逐条初始化网站的内容,并审核,因为网站上线后,所有内容均可以被外人看到,如果有错误的,就不大好了。
第九步:网站宣传
对于一个新上线的网站,网站宣传是非常重要的,无论网站的目的是宣传企业还是运营一个电子商务类的平台,都需要大量的宣传。
现有的宣传手段主要有:
搜索引擎的竞价排名;
网站自身的SEO优化;
各类网络媒体或其它媒体的广告宣传,如门户网站、各大与网站内容相关的论坛、传统的电视、报纸等等;
本篇文章给大家谈谈django如何后台运行,以及django运维对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、django sqlalchemy怎么用admin后台管理2、如何在服务器上部署Django项目并使其在后台一直运行3、请教一个django后台管理页面问题4、Django 前台与后台交互问题5、django 后台怎么执行threaddjango sqlalchemy怎么用admin后台管理1. Django Admin 不适合最终用户使用
Django admin是为管理员设计的, 而不是给最终用户使用的. Django admin的存在是为了方便管理员添加修改删除数据和管理站点任务.
2. 列表显示
如上图, 因为model的默认文本显示是 xxx object, 所以在admin列表页中默认显示的也是xxx object. 如果希望显示更有用的信息 我们可以进行如下设置:
为model写__unicode__()方法
如果希望model在列表页中显示更多项, 则需要使用list_display
__unicode()__例子:
# models.py
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=100)
slug = models.CharField(max_length=100)
content = models.TextField()
is_published = models.BooleanField(default=False)
def __unicode__(self):
return self.title
# admin.py
from django.contrib import admin
from .models import Article
admin.site.register(Article)
结果:
如果希望显示其他项:
# admin.py
from django.contrib import admin
from .models import Article
class ArticleAdmin(admin.ModelAdmin):
list_display = ('title', 'is_published')
admin.site.register(Article, ArticleAdmin)
结果:
3. 为ModelAdmin增加动作
我们可以为ModelAdmin增加method或function, 以此使admin界面更符合我们的需求.
例如, 我们希望在在admin界面中显示一个明确地URL, 但当我们在model中定义了get_absolute_url()方法后, django admin默认给我们的却是一个与我们想要的URL完全不同的URL. 于是我们可以通过以下方法定义该URL:
# admin.py
from django.contrib import admin
from django.core.urlresolvers import reverse
from django.utils.html import format_html
from .models import Article
class ArticleAdmin(admin.ModelAdmin):
list_display = ('title', 'is_published',)
readonly_fields = ('show_url',)
def show_url(self, instance):
url = reverse('article_detail', kwargs={'pl': instance.pk})
response = format_html("""a href="{0}"文章预览preview/a""", url)
return response
show_url.short_description = u"文章预览"
# 显示HTML tag
# 对于用户提交的数据, 永远不要这么设置!
show_url.allow_tags = True
注意, allow_tags属性, 其默认值是False, 如果错误使用将会带来安全隐患. 如果设置为True,
在admin中会允许显示HTML tag. 因此我们使用的原则是, 对于用户输入的信息, 永远不设置allow_tags=True.
只有当其内容是系统生成, 用户无法修改的时, 才能使用allow_tags=True.
4. 不在多用户编辑环境使用list_editable
django admin为我们提供了在列表页修改model属性的功能, 这样方便管理员一次修改多个属性. 如果管理员只有一个人的话,
那就没问题, 但在多用户环境中时, 却是会存在一个很严重的潜在问题. 因为在list页提交的修改信息, 记录的是位置, 而不是model的主键.
举个例子, 文章列表页默认按照创建顺序逆序排列, 用户A打开文章列表页, 并开始修改, 同时用户B增加了一篇新文章, 此时,
当用户A提交修改后其后的文章信息都会出错.
如何在服务器上部署Django项目并使其在后台一直运行
前几天老师让我把一个Django项目(爬虫网页)放到校园内网上,但是我想先用自己的服务器来尝试一下。之前刚好有在Digital Ocean上买过服务器用来运行ss脚本,平时服务器一直放着没啥用,所以就拿它来试验一下。
废话不多说,第一步通过WinSCP软件把Django文件传到服务器上。
在服务器中安装Django需要的环境和我所需要的Python第三方库。
以上所有步骤完成后,还需要进行一步操作,这是我经历的一个 坑 。 打开Django文件目录中的 settings.py,把 ALLOWED_HOSTS=[] 改为 ALLOWED_HOSTS=["*"] 。
在服务器中打开到 manage.py 所在的目录,输入命令:
python3 manage.py runserver 0.0.0.0:8000
然后按下回车,在浏览器中输入: 该服务器IP地址:8000 ,大功告成!
Attention:
1. python3 不是特定的,是根据你的Django项目所需要的环境指定的。
2. 8000 是端口号,可以修改。
如果想要Django项目一直运行,关闭终端后还在运行,即需要运行如下命令, nohup command, command 即位上文所说的 python3 manage.py runserver 0.0.0.0:8000 。
请教一个django后台管理页面问题django的后台扩展有扩展模型、扩展模型字段(field)方法,但我还是最喜欢这种扩展方式(来自django的官方文档,非常适合自定义):
转自:
原理很简单,就是用在url.py中添加一条url配置覆盖掉后台默认的url处理,然后就可以随心所欲的编写自己的view了
显而易见,对数据编辑工作来说,该管理界面极为有用(想象一下)。如果用于完成某种数据的录入工作,该管理界面实在是无人能及。我们猜想本书绝大多数读者都有成堆数据录入任务。
Django管理接口特别关注那些没有技术背景的用户来使用数据录入;这也是该功能的开发目的。在Django最初开发地报社,开发一个典型的在线市政供水质量报告系统,需求如下:
负责该题材的记者与某个开发人员会面,提交现有数据。
开发人员围绕该数据设计一个模型,并为该记者开发出管理界面。
在记者将数据录入 Django 的同时,程序员就可以专注于开发公众访问界面了(最有趣的部分!)。
换句话说,Django 管理接口之所以存在的首要目的是为了方便内容编辑人员和程序员同时开展工作。
当然,除了显而易见的数据录入任务之外,我们发现管理界面在其他一些情况下有是很有用处的。
CrqrWV a href=”“xwyekefymefu/a, [url=]eycmfqtvgmvb[/url], [link=]ibbcerwyzvhq[/link],
管理获得的数据 :很少有真实数据输入会和像这样的站点相关联,因为多数数据来自自动生成的源头。然而,当所获取的数据出错而导致麻烦时,能够便捷地找到并修改出错数据将会有助于问题解决。
无需或者仅需略为定制之后, Django 管理界面就能处理绝大部分常见情形。然而,正是因为在设计上极力折衷, Django 管理界面能够很好地处理这种常见情形也就意味着它无法同样处理其它一些编辑模型。
4yQjmU a href=”“kdqfnmmekszw/a, [url=]zusybryiqeir[/url], [link=]grlqejhxwprt[/link],
管理之道
BmuFnt a href=”“ifhkpydljkaf/a, [url=]mqitqhmcazco[/url], [link=]qcmerxzxnmhj[/link],
受信任用户编辑结构化的内容。
是的,这非常的简单,但这种简单是建立在一整堆假定之上的。Django 管理界面的全部设计理念均直接遵循这些假定,因此让我们深入理解一下这些后续小节中所出现术语的含义。
受信任用户
管理界面被设计成由你这样的开发人员所 信任 的人使用。这里所指的并非只是通过身份验证的人;而是说 Django 假定可以相信内容编辑者只会做对的事情。
反过来说,这也就意味着如果你信任用户,他们无需征得许可就能编辑内容,也没有人需要对他们的编辑行为进行许可。另一层含义是,尽管认证系统功能强大,但到本书写作时为止,它并不支持对象级基础的访问限制。如果你允许某人对自己的新闻报道进行编辑,你必须能够确信该用户不会未经许可对其他人的报道进行编辑。
编辑
Django 管理界面的首要目的是让用户编辑数据。乍一看这是显而易见的,但仔细一想却又变得有点难以捉摸和不同凡响。
举例来说,虽然管理界面非常便于查验数据(如刚才所讨论的那样),但这并不是它的设计初衷。比如我们在第 12 章中谈到的,它缺少视图许可。Django 假定如果某人在管理界面中可以查看内容,那么也可以进行编辑。
还有件更重要的事情要注意,那就是对于远程调用工作流的缺乏。如果某个特定任务由一系列步骤组成,没有任何机制确保这些步骤能够以某个特定顺序完成。 Django 管理界面专注于 编辑 ,而不关心修改周边的活动。对工作流的这种回避也源自于信任原则:管理界面的设计理念是工作流乃人为事物,无需在代码中实现。
最后,要注意的是管理界面中缺少聚合。也就是说,不支持显示总计、平均值之类的东西。再次重申,管理界面只用于编辑——它预期你将通过定义视图来完成其它所有工作。
结构化的内容
30CEN9 a href=”“bxyzitjhvwis/a, [url=]ylhgcrwsnuue[/url], [link=]mecoeqqxpail[/link],
就此打住
现在可以肯定的是,Django 的管理界面 并不 打算成为所有人的万能工具;相反我们选择了专心做一件事情,并把它完成得尽善尽美。
SaPQz9 a href=”“fmvbpdngtcts/a, [url=]tvwreqwomvco[/url], [link=]nwfgxlxpodeq[/link],
必须记住,尽管管理界面很复杂,但它始终只是一个应用程序。只要有充足的时间,任何Django的开发者都能做到admin接口做到的所有事。 因此,我们需要寄希望于将来会有一个完全不同的admin接口会出现,这个新的接口拥有一系列不同的前提假设,并且工作方式也完全不同。
最后要指出的是,在本文写作之时,Django 开发者们正在进行一个新的管理界面的开发工作,该版本将提供更多定制灵活性。当你阅读本文时,这些新特性也许已经进入了真实的 Django 发布之中。你可以向 Django 社区的某些人了解是否已经整合了 newforms-admin 主干代码。
定制管理模板
lrYxwt a href=”“uokhfgxirpcl/a, [url=]wqhpuiouinaf[/url], [link=]fpatpucympci[/link],
现在,我们来看看如何来快速定制admin管理接口的外观。 第6章讲到了一些最常见的任务:修改商标(为那些讨厌蓝色的尖发老板),或者提供一个自定义的form。
更进一步的目标常常会包含,改变模板中的一些特殊的项。每一种admin的视图,包括修改列表、编辑表单、删除确认页以及历史视图,都有一个与之相关联的模板可以以多种方式来进行覆盖。
首先,你可以在全局上覆盖模板。admin视图使用标准的模板载入机制来查找模板。所以如果你在模板目录中创建了一个新的模板,Django会自动地加载它。全局的模板在表17-1中列出。
Fd2cvv a href=”“fphafdvvmhea/a, [url=]mompqgnztmob[/url], [link=]oamzxjphpsxv[/link],
大多数时候,你可能只是想修改一个单独的对象或应用程序,而不是修改全局性的设定。因此,每个admin视图总是先去查找与模型或应用相关的模板。这些视图寻找模板的顺序如下:
admin/app_label/object_name/template.html
JRmAl2 a href=”“kqeldaxlpkep/a, [url=]ihzkjznjrsqj[/url], [link=]sqhirlipxjfo[/link],
admin/template.html
例如,在 books 这个应用程序中, Book 模块的添加/编辑表单的视图会按如下顺序查找模板:
admin/books/book/change_form.html
admin/books/change_form.html
admin/change_form.html
自定义模型模板
大多数时候,你想使用第一个模板来创建特定模型的模板。 通常,最好的办法是扩展基模板和往基模板中定义的区块 中添加信息。
例如,我们想在那个书籍页面的顶部添加一些帮助文本。 可能是像图17-1所示的表单一样的东西。
图 17-1. 一个自定义管理编辑表单.
这做起来非常容易:只要建立一个 admin/bookstore/book/change_form.html 模板,并输入下面的代码:
{% extends "admin/change_form.html" %}
{% block form_top %}
pInsert meaningful help message here.../p
{% endblock %}
mGrlX4 a href=”“omnhyzkldddt/a, [url=]ydlrelntzksj[/url], [link=]zzizrvybyaol[/link],
自定义JavaScript
这些自定义模型模板的常见用途包括,给admin页面增加自定义的javascript代码来实现一些特殊的视图物件或者是客户端行为。
幸运的是,这可以更简单。每一个admin模板都定义了 {% block extrahead %} ,你可以在 head 元素中加入新的内容。例如你想要增加jQuery() 到你的admin历史中,可以这样做:
{% extends "admin/object_history.html" %}
{% block extrahead %}
script src="" type="text/javascript"/script
script type="text/javascript"
// code to actually use jQuery here...
/script
{% endblock %}
备注
我们并不知道你为什么需要把jQuery放入到历史页中,但是这个例子可以被用到任何的模板中。
TYy7is a href=”“hpswriedwzmw/a, [url=]bvkzcktnoefm[/url], [link=]wkbudpcvacdz[/link],
创建自定义管理视图
现在,想要往Django的admin管理接口添加自定义行为的人,可能开始觉得有点奇怪了。我们这里所讲的都是如何改变admin管理接口的外观。他们都在喊:如何才能改变admin管理接口的内部工作机制。
首先要提的一点是,这并不神奇。admin管理接口并没有做任何特殊的事情,它只不过是和其他一些视图一样,简单地处理数据而已。
确实,这里有相当多的代码; 它必须处理各种各样的操作,字段类型和设置来展示模型的行为. 当你注意到ADMIN界面只是一系列视图(Views)的集合,增加自定义的管理视图就变得容易理解了。
作为举例,让我们为第六章中的图书申请增加一个出版商报告的视图。建立一个admin视图用于显示被出版商分好类的书的列表,一个你要建立的自定义admin报告视图的极典型的例子。
首先,在我们的URLconf中连接一个视图。插入下面这行:
(r'^admin/books/report/$', 'mysite.books.admin_views.report'),
在将这行加入这个admin视图之前,原本的URLconf应该是这样:
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^admin/bookstore/report/$', 'bookstore.admin_views.report'),
(r'^admin/', include('django.contrib.admin.urls')),
)
为什么要将定制试图置于管理内容 之前 呢?回想一下,Django 是按照顺序处理 URL 匹配式的。管理内容几乎匹配内容点之后所有的东西,因此如果我们把这几行的顺序颠倒一下, Django 将会为该匹配式找到一个内建管理视图,并将试图在 books 应用程序中为 Report 模型再入更新列表,而这却是不存在的。
现在我们开始写视图。为了简单起见,我们只把所有书籍加载到上下文中,让模板用 {% regroup %} 标签来处理分组操作。创建 books/admin_views.py 文件并写入以下内容:
from mysite.books.models import Book
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.contrib.admin.views.decorators import staff_member_required
def report(request):
return render_to_response(
"admin/books/report.html",
{'book_list' : Book.objects.all()},
RequestContext(request, {}),
)
report = staff_member_required(report)
因为我们把分组操作留给了模板,该视图非常简单。然而,有几段微妙的细节值得我们搞清楚。
我们使用了 django.contrib.admin.views.decorators 中的 staff_member_required 修饰器。该修饰器与第 12 章中讨论的 login_required 类似,但它还检查所指定的用户是否标记为内部人员,以决定是否允许他访问管理界面。
该修饰器保护所有内容的管理视图,并使得视图的身份验证逻辑匹配管理界面的其它部分。
我们在 admin/ 之下解析了一个模板。尽管并非严格要求如此操作,将所有管理模板分组放在 admin 目录中是个好的做法。我们也将应用程序所有的模板放置在名叫 books 的目录中,这也是最佳实践。
我们将 RequestContext 用作 render_to_response 的第三个参数(``context_instance`` )。这就确保了模板可访问当前用户的信息。
参看第十章了解
关于“简述电子商务网站建设的设计过程是怎样的”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!
本文来自作者[次皓轩]投稿,不代表空气号立场,如若转载,请注明出处:https://haokongqi.org.cn/cshi/202504-448.html
评论列表(4条)
我是空气号的签约作者“次皓轩”!
希望本篇文章《简述电子商务网站建设的设计过程是怎样的_1》能对你有所帮助!
本站[空气号]内容主要涵盖:国足,欧洲杯,世界杯,篮球,欧冠,亚冠,英超,足球,综合体育
本文概览:网上科普有关“简述电子商务网站建设的设计过程是怎样的”话题很是火热,小编也是针对简述电子商务网站建设的设计过程是怎样的寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在...