`

eclipse创建一个django及管理界面排版和多语言实现

 
阅读更多

 

  1.  新建project及app:

            New-Other-Pydev Django project  -- 'django-utils'

            New-Django-Create Application --  'book'

 

   2.修改models.py和settings.py

 

            

from django.db import models

class Publisher(models.Model):
    name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=60)
    state_province = models.CharField(max_length=30)
    country = models.CharField(max_length=50)
    website = models.URLField()

    def __unicode__(self):
        return self.name
    

    class Meta:
        ordering = ['name']
        db_table = 'kt_publisher'

    在settings.py 的INSTALLED_APPS 元组中添加新建的App--‘book',修改数据库配置,首先在对应数据库中新建数据库。

   

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'book',  # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': 'root',
        'PASSWORD': '',
        'HOST': '',  # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '',  # Set to empty string for default.
    }
}

     数据库book是事先在mysql中建立的,django同步必须为已经存在的数据库才行。

 

    3.同步数据库

          django-sync DB(syncdb manage.py )

          同步成功后,可以在浏览器中访问了,http://192.168.0.1:8000/admin/

    4.管理自定义app

          django的后台管理界面默认现实为2个app--Groups  Users,如果想现实自定义的app如book,按如下配置:book-admin.py 

         

# django imports
from django.contrib import admin
from django import forms
from django.utils.translation import ugettext_lazy as _
from book.models import Publisher
class PublisherAdmin(admin.ModelAdmin):
    list_display = ('name', 'address', 'website')#列表现实字段
    search_fields = ('name',)#列表上面搜索框,搜索字段 (like匹配)
    list_filter = ('country',)#列表过滤字段
    fieldsets = (#详细界面,分类现实详细字段
        ('info', {'fields': ('name',)}),
        ('location',{'fields':('country','state_province','city','address')}),
        ('site',{'fields':('website',)})
    )
    
admin.site.register(Publisher, PublisherAdmin)#把上面配置注册到管理界面

    5.实现多语言

 

    在setting.py中添加设置:

    MIDDLEWARE_CLASSES增加'django.middleware.locale.LocaleMiddleware',该中间要出现在SessionMiddleware和CacheMiddleware后,其他所有中件间之前

    TEMPLATE_CONTEXT_PROCESSORS 增加 'django.core.context_processors.i18n'

 

     在app下新建文件夹locale/zh_CN(对应不同语言)/LG_MESSAGES/    新建文件django.po,内容如下:

    

# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-01-07 12:56+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: templates/404.html:4 templates/404.html.py:8
msgid "Page not found"
msgstr "未找到对应页面"

#: templates/404.html:10
msgid "We're sorry, but the requested page could not be found."
msgstr "很抱歉,您所请求的页面未找到。"

#: templates/500.html:4
msgid "Home"
msgstr "主页"

#: templates/500.html:4
msgid "Server error"
msgstr "服务器错误"

#: templates/500.html:6
msgid "Server error (500)"
msgstr "服务器错误(500)"

#: templates/500.html:9
msgid "Server Error <em>(500)</em>"
msgstr "服务器错误 <em>(500)</em>"

#: templates/500.html:10
msgid ""
"There's been an error. It's been reported to the site administrators via e-"
"mail and should be fixed shortly. Thanks for your patience."
msgstr "系统发生错误。改错误已经通过邮件发给管理员处理。"

#: templates/admin/base_site.html:4
msgid "Site Admin"
msgstr "站点管理"

msgid "Change language"
msgstr "语言"

msgid "Simplified Chinese"
msgstr "简体中文"

msgid "Traditional Chinese"
msgstr "繁体中文"

msgid "Ignore"
msgstr "忽略"

#: settings.py:36
msgid "Inactive"
msgstr "无效"

#: settings.py:37
msgid "Active"
msgstr "有效"

#: settings.py:38
msgid "Suspended"
msgstr "暂停"


#: settings.py:91
msgid "Year"
msgstr "年"

#: settings.py:92
msgid "Month"
msgstr "月"

#: settings.py:93
msgid "Day"
msgstr "日"

 

    在terminal(终端)cd 到LG_MESSAGES目录下,运行命令:msgfmt django.po -o django.mo

    重启服务就会发现英文已经有所翻译,但是想要翻译制定的字段还要在django.po文件中配置,然后到目录下运行上面命令。

 

 

分享到:
评论

相关推荐

    Python基于Django框架实现的一个学生信息管理系统源码.zip

    Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于...

    在eclipse中搭建Django(图解)

    Python 插件是 Eclipse 中的一个插件,它提供了对 Python 语言的支持,使得我们可以在 Eclipse 中编写和运行 Python 代码。 配置开发环境 配置开发环境是搭建 Django 项目的第二步骤。在这个步骤中,我们需要配置 ...

    python+Eclipse+pydev环境搭建 创建Django项目

    在本文中,我们将详细介绍如何在 Eclipse 中安装 pydev 插件,并创建一个 Django 项目。 安装 Python Python 是一门非常流行的高级编程语言,它具有很高的可读性和易用性。 Python 有两个版本:Python 2 和 Python...

    django实现的一个图书管理系统源码.zip

    使用django实现的一个图书管理系统,可以进行借书,还书,后台登录,多用户借书功能。 使用django实现的一个图书管理系统,可以进行借书,还书,后台登录,多用户借书功能。 使用django实现的一个...

    基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计)

    基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计),基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计),基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计)...

    基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计).zip

    基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计),基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计),基于python+django学生信息管理系统设计与实现(含程序源码和毕业设计)...

    基于 Django + Vue 实现的 用户信息管理系统

    【标题】"基于 Django + Vue 实现的 用户信息管理系统"是一个综合性的项目,结合了Python的Django框架和JavaScript的Vue.js库,用于构建一个功能完善的用户信息管理系统。这个系统旨在提供用户信息的创建、查看、...

    Django的资产管理系统源码

    Adminlet是一个用于Django的后台管理界面增强库,它提供了自定义和美化管理界面的功能。在这个项目中,Adminlet可能被用来改进默认的Django admin界面,使管理员可以更高效地管理和操作资产数据。 在文件列表中,...

    一个基于 Django 构建的CMS管理系统源码

    这是一个基于 Django 构建的开源内容管理系统,它专注于用户体验,并为设计人员和开发人员提供精确的控制。 功能特点 为作者提供快速、美观的界面 完全控制前端设计和结构 可扩展至数百万页面和数千编辑器 开箱即...

    基于django的管理系统的设计与实现.zip

    基于django的管理系统基于django的管理系统的设计与实现.zip基于django的管理系统的设计与实现.zip基于django的管理系统的设计与实现.zip基于django的管理系统的设计与实现.zip基于django的管理系统的设计与实现.zip...

    Python-djangodynamicscraper通过Django管理界面创建爬虫

    `django-dynamic-scraper` 是一个非常实用的库,它允许开发者利用Django的管理界面来创建、编辑和运行Web爬虫,而无需编写大量的代码。这个强大的工具将Django的灵活性和Scrapy的高效爬取能力结合在一起,使得非...

    Python-Django材料管理系统实践

    综上所述,"Python-Django材料管理系统实践"是一个全面的Web应用开发案例,涵盖了从数据库设计、用户认证到文件管理等多个关键环节,为学习和理解Django框架提供了一个实际的场景。通过这个项目,开发者不仅可以掌握...

    python django+bootstrap实现用户管理系统

    将Django与Bootstrap结合,可以利用Django的后端功能和Bootstrap的前端优势,构建出功能强大、界面友好的用户管理系统。具体步骤可能包括: 1. **设置项目和应用**:使用Django的`startproject`和`startapp`命令...

    基于django的宿舍管理系统

    【基于Django的宿舍管理系统】是一个使用Python的Web框架Django开发的应用程序,它提供了全面的宿舍管理解决方案。Django以其MVT(Model-View-Template)架构模式著名,能够高效地构建复杂、数据驱动的Web应用。在这...

    python项目基于django的物业信息管理系统的实现.zip

    python项目基于django的物业信息管理系统的实现.zippython项目基于django的物业信息管理系统的实现.zippython项目基于django的物业信息管理系统的实现.zippython项目基于django的物业信息管理系统的实现.zippython...

    基于Django开发的新闻网站及网站后台管理系统源码.zip

    "基于Django开发的新闻网站及网站后台管理系统源码"这个标题表明这是一个使用Python的Django框架构建的项目,主要用于创建一个新闻网站,并且包含了管理后台的功能。Django是一个强大的、免费的开源Web应用框架,它...

    使用eclipse开发Django框架简单的Blog项目

    使用eclipse开发Django框架简单的Blog项目

    django实现用户的登录注册连接后台数据库完成主页的搭建

    1. Django框架:Django是Python语言开发的一个高级Web框架,遵循MVC(模型-视图-控制器)架构模式。它提供了许多开箱即用的功能,如ORM(对象关系映射)、模板引擎、URL路由系统,以及强大的表单处理能力,非常适合...

    基于Django实现的物流管理系统源码.zip

    这个"基于Django实现的物流管理系统源码"是一个实际项目,可以帮助我们理解如何在实践中应用Django来处理物流行业的业务流程。 【描述】该描述简单明了,表明这是一个使用Django框架构建的物流管理系统的源代码。这...

Global site tag (gtag.js) - Google Analytics