首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

django 1.8 官方文档翻译: 6-4-2 编写自定义的django-admin命令

如果,出于某些原因,你的自定义的管理命令需要使用一个固定的区域设置,你需要在你的handle()方法利用I18N支持代码提供的函数手工地启用停用它: from django.core.management.base...如果你想获得解析命令参数并在响应如何调用代码的所有机制,可以使用这个类;如果你不需要改变这个行为,请考虑使用它的子类。 继承BaseCommand类要求你实现handle()方法。...BaseCommand.output_transaction 一个布尔值,指示命令是否输出SQL语句;如果为True,输出将被自动用BEGIN;COMMIT;封装。默认为False。...如果该命令引发一个CommandError,它将被截断并打印到标准错误输出。 在你的代码调用管理命令 不应该在你的代码中直接调用execute()执行一个命令。...如果这个异常是执行一个来自命令行控制台的管理命令时引发,它将被捕获并转换成一个友好的错误信息到合适的输出流(例如,标准错误输出);因此,引发这个异常(并带有一个合理的错误描述)是首选的方式指示执行一个命令时某些东西出现错误

67420

软件工程耦合详解

(如果两个模块一个直接引用了另一个模块的内容) 一个模块直接访问另一个模块的内部数据; 一个模块不通过正常入口转到另一模块内部; 两个模块有一部分程序代码重叠(只可能出现在汇编语言中); 一个模块有多个入口...举例:模块P修改了模块Q的一个语句、模块P分支转移到模块Q的一个局部标号。 缺点:重用时两个模块均需重用。...缺点;①与结构化编程相矛盾,代码不可读 ②对全局变量的修改必须一致 ③难以重用 ④不安全,数据暴露严重 外部耦合(External Coupling) 一组模块都访问同一全局简单变量而不是同一全局数据结构...,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。...数据耦合(Data Coupling) 如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数公共数据结构或外部变量)交换输入、输出信息的,则称这种耦合为数据耦合。

1.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

11-存储过程函数

存储过程 # 存储过程函数 /* 存储过程函数:类似Java的方法 好处: 1. 提高代码重用性 2....简化操作 */ # 存储过程 /* 含义:一组预先编译好的SQL语句集合 好处: 1. 提高代码重用性 2. 简化操作 3. 减少编译次数 4....如果存储过程体仅有一句话,BEGIN END 可以省略 4. 存储过程体每条SQL语句结尾要求必须加分号 5....,适合处理数据后返回一个结果 */ # 创建语法 CREATE FUNCTION 方法名(参数列表) RETURNS 返回类型 BEGIN 函数体 END /* 参数列表包含两部分:参数名...参数类型 函数体:肯定有return语句 如果return语句不会报错,但没有实际效果 函数体只有一句话时,BEGIN END可以省略 DOS窗口下仍然使用DELIMITER设置终止符 */

33520

Python黑帽编程2.6 模块

模块基本上就是一个包含了所有你定义的函数变量的文件。为了在其他程序重用模块,模块的文件名必须以.py为扩展名。 模块可以从其他程序 导入以便利用它的功能。这也是我们使用Python标准库的方法。...sys.argv变量一个字符串的列表,包含了命令参数的列表。 sys.path包含输入模块的目录名列表。...这个模块应该被放置我们导入它的程序的同一个目录,或者sys.path所列目录之一。 测试代码如下: #!...标识符有函数、类变量。当为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块定义的名称列表。 先看下面的代码: #!...为了观察dir的作用,我们定义一个新的变量a并且给它赋一个值,然后检验dir,我们观察到列表增加了以上相同的值。我们使用del语句删除当前模块变量/属性,这个变化再一次反映在dir的输出

955100

Python入门(8)

第八节 模块 大家好,上一节课,我们学习了python的函数,我们由此知道Python编程不仅仅可以通过一些基本的对象(如常量变量、运算符表达式)及流程控制语句编写代码实现一些简单的应用,还能通过创建函数...由此,也引入了一个重要的编程理念,那就是凡是遇到需要构建任何一个解决问题的方法(解决方案)时,我们都要努力地把它“封装”到可重用的函数,这样,我们就有机会在下一次遇到相同或类似的问题的时候,实现代码重用...1、import 语句 首先,我们创建一个空的模块文件:module_1.py,并添加如下代码。...但是,如果我们自定义模块,我们就要特别注意,导入模块时,python的解释器将从sys.path变量所提供的目录中进行搜索。如果找到了对应的模块,则该模块语句将开始运行,并能为你所使用。...否则,你必须将你的模块文件放置sys.path所列出的目录,你也可以通过修改PYTHONPATH 环境变量添加你的模块文件所在的目录路径。

44030

sqlserver EXECsp_executesql使用介绍「建议收藏」

sqlserver EXECsp_executesql使用介绍 MSSQL为我们提供了两种动态执行SQL语句命令,分别是EXECsp_executesql;通常,sp_executesql则更具有优势...还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能(对于这个我在后面的例子中会详加说明),还可以编写更安全的代码。EXEC某些情况下会更灵活。...,然后再把该变量作为EXEC命令的输入参数,这样就不会受限制了; EXEC不提供接口 这里的接口是指,它不能执行一个包含一个变量符的批处理,这里乍一听好像不明白,不要紧,我在下面有一个实例,您一看就知道什么意思...这功能使你可以创建参数的查询字符串,这样就可以比EXEC更好的重用执行计划,sp_executesql的构成与存储过程非常相似,不同之处在于你是动态构建代码。...assignment> —类似存储过程调用 @stmt参数是输入的动态批处理,它可以引入输入参数或输出参数存储过程的主体语句一样,只不过它是动态的,而存储过程是静态的,不过你也可以存储过程中使用

3.2K30

Java避免if-else-if:策略模式策略模式(Policy)总结

你是否愿意维护扩展这样的代码?...消除了一些if else条件语句 :Strategy模式提供了用条件语句选择所需的行为以外的另一种选择。当不同的行为堆砌一个时 ,很难避免使用条件语句选择合适的行为。...这就意味着有时Context会创建和初始化一些永远不会用到的参数。如果存在这样问题 , 那么将需要在StrategyContext之间更进行紧密的耦合。...优点: 相关算法系列 Strategy类层次为Context定义了一系列的可供重用的算法或行为。 继承有助于析取出这些算法公共功能。...消除了一些if else条件语句 :Strategy模式提供了用条件语句选择所需的行为以外的另一种选择。当不同的行为堆砌一个时 ,很难避免使用条件语句选择合适的行为。

2.3K40

【深入浅出C#】章节 4: 面向对象编程基础:封装、继承多态

封装(Encapsulation)通过将数据相关操作封装在一个,隐藏内部实现细节,并提供公共接口与外部进行交互。...使用return语句可以将结果返回给调用者。 方法的重载: 一个,可以定义多个同名但参数列表不同的方法,这称为方法的重载。方法重载可以根据不同的参数类型和数量执行不同的逻辑。...这两个方法具有相同的名称但参数列表不同,这就是方法重载。 Main 方法创建一个 Calculator 类的实例 calculator。... Program 类的 Main 方法,我们创建了 Circle Rectangle 的实例,并通过接口变量调用它们的 CalculateArea 方法,实现了多态性。... Program 类的 Main 方法,我们创建了 Circle Rectangle 的实例,并通过抽象类变量调用它们的 CalculateArea 方法,实现了多态性。

38630

如何在微服务之间共享同步代码

但是,模块化重用可能经常导致高耦合或代码重复。将不同的服务绑定到同一个共享库会破坏我们首先使用服务的原因。 使用Bit等新的开源技术,我们的微服务之间共享重用公共代码变得比以往更容易,更有效。...没有共享的Libs,没有耦合 Bit 是一个开源项目,它为我们微服务架构中共享重用代码提供了一种全新的方法。使用Bit,您不必创建新的存储库或配置包共享代码而不是复制它。...这样,您可以不更改代码的单行代码创建更多存储库或将微服务耦合在一起的情况下,使任何服务的部分可以从其他服务重用。...示例工作流程 您可以使用Bit项目之间隔离跟踪源代码的能力,简单地隔离同步任何可重用代码,而不是通过公共库将您的微服务耦合在一起。...让我们以下项目的目录结构中使用Bit隔离共享可重用的组件left-pad, some-logichello-world 。

2.6K10

js的严格模式(strict mode)

另一方面,同样的代码"严格模式",可能会有不一样的运行结果;一些"正常模式"下可以运行的语句"严格模式"下将不能运行。...函数调用的this 普通的函数调用f(),this的值会指向全局对象.严格模式,this的值会指向undefined.当函数通过callapply调用时,如果传入的thisvalue参数一个....严格模式,this的值就是``thisvalue参数的值,没有任何类型转换. arguments对象属性不与对应的形参变量同步更新 非严格模式,修改arguments对象某个索引属性的值,这个属性对应的形参变量的值也会同时变化...严格模式arguments 对象会以形参变量的拷贝的形式被创建和初始化,因此 arguments 对象的改变不会影响形参。...eval相关的区别 严格模式,eval不会在当前的作用域内创建新的变量.另外,传入eval的字符串参数也会按照严格模式解析.你需要全面测试确保没有代码收到影响。

74130

Python基础——面相对象的三大特征【封装,继承,多态】

同时,封装还可以提供一种方式控制对对象的访问,从而实现数据的安全性完整性。 在上篇文章,我们讲到的方法都是公共方法。公共方法是指:不使用任何特殊前缀的方法。... Python ,私有的属性方法可以用于保护对象内部状态: 私有属性:使用双下划线前缀定义私有属性,例如:__private_attr。这样的属性类的外部是不可见的,也不能被外部访问。...这使得我们可以创建一个新类,无需从头开始定义,又可以拥有父类的特性。(也就是说,新类是基于父类定义的) 优点: 1,代码重用:通过继承,子类可以重用父类的代码,减少重复代码。...Python,由于其动态类型的特性,多态是天然存在的。这里我们可以从两个方面讨论Python的多态: 1,动态类型:Python是一种动态类型语言,这意味着我们不需要在声明变量时指定其类型。...这使得函数可以接受任何类型的参数,只要该参数支持函数期望的操作或方法。 2,方法重写:子类可以提供父类方法的特定实现(复写)。当子类对象调用该方法时,会调用子类的实现,而不是父类的实现。

11610

什么是面向对象编程?OOP 深入解释

在看狗的例子,程序员可以这样考虑组织 OOP: 为所有的狗创建一个类, 作为所有狗都会有的信息行为(方法)的蓝图,无论类型。这也称为父类。 **主蓝图下创建子类表示狗的不同子类别。...这增加了一层安全性,开发人员通过类定义公共方法公开该数据选择可以在对象上看到哪些数据。 ,大多数编程语言都有公共、受保护私有部分。...抽象 抽象是封装的扩展,它使用包含数据代码的类对象来向用户隐藏程序的内部细节。这是通过在用户更复杂的源代码之间创建一个抽象层实现的,这有助于保护存储代码的敏感信息。...抽象 降低复杂性并提高代码可读性 促进代码重用组织 数据隐藏通过向用户隐藏敏感细节提高数据安全性 通过抽象掉低级细节提高生产力 抽象也可以用汽车解释。...我们的狗示例,我们可能想要给出TrackingDog一种不同于一般狗类的特定类型的吠声。 bark()方法覆盖可以子类创建一个方法覆盖bark()父Dog类的方法。

34910

Django 自定义管理命令

关于这个Management Command的一个优点是你可以创建自定义的command扩展它.当你需要通过终端命令对程序进行操作的时候, 通过这个管理命令就非常方便了。...本篇, 你将学习到如何编写自己的命令并通过manage.py 调用. 介绍 开始之前我们先熟悉下, Management Command(manage.py)命令行....命令的处理代码应该在handle() 方法定义....而这些单独的普通脚本是非常麻烦的, 而且通过这种方式会让代码组织更加紧凑. 处理参数 参数处理部分使用了argparse, 属于标准库里面的包,我们应该定义一个名为add_arguments的方法....位置参数 下面举例创建随机用户实例的命令, 他接受一个total参数, 作用定义该命令创建的随机用户数. management/commands/create_users.py Python from

1.1K20

【JavaSE专栏61】封装,面向对象编程的三大特性之一

Java ,通过使用访问修饰符(如 private、protected、public)限制对类的成员变量方法的访问权限。...灵活性:通过公共方法 getters setters 来访问修改成员变量的值,可以方法添加额外的逻辑判断处理,提高了代码的灵活性。...继承:继承是一种创建新类的机制,它允许一个类(子类)继承另一个类(父类)的属性方法。子类可以继承父类的公共成员变量方法,也可以重写父类的方法或者新增自己的成员变量方法。...通过继承,可以实现代码重用扩展。 多态:多态是指一个对象可以具有多种不同的形态。 Java ,多态性通过继承方法重写实现。...多态性允许使用父类的引用变量引用子类对象,这样可以统一对待不同的子类对象。通过封装继承,多态性可以方便地实现代码重用、扩展灵活性。

23530

Go语言中的包库:一次全面的理解

一个包包含了一组代码文件,这些文件都在同一个目录下,包提供了一个全局可见的方式组织共享代码。 Go的每个文件都属于一个包,文件的第一行就是声明这个文件属于哪个包。...包有以下几个主要的作用: 代码封装重用:通过定义包,我们可以将一组相关的函数、类型、常量变量组织在一起,形成一个独立的模块,这个模块可以被其他的包引用使用。...比如,我们可以有两个名为New的函数,分别在package1package2,它们可以通过package1.Newpackage2.New区分。...如果一个包成员(比如函数、变量、常量、类型)的名字首字母大写,那么它就可以被其他的包访问(公有的);如果首字母小写,那么它只能在自己所属的包内部访问(私有的)。..."包"(Package)"库"(Library)通常有一些微妙的区别。"包"通常指的是一个单独的代码单元,它包含了Go代码,可以通过import语句导入使用。

21020

Groovy

闭包允许开发者编写可重用代码块,而元编程则允许在运行时动态地创建和修改类方法。 函数式编程支持:Groovy 支持函数式编程范式,开发者可以编写更加简洁表达性强的代码。...3、创建项目 4、基本语法 Groovy,类型转换是一个非常自然灵活的过程,它允许不同类型的数据需要时自动转换。这种特性极大地简化了代码的编写维护,因为它减少了显式类型转换的需求。...开发者不需要编写额外的代码进行显式的类型转换,从而可以专注于业务逻辑的实现。 类说明 Groovy,如果你创建一个没有类定义的脚本文件,这个文件将被当作一个脚本(script)来处理。...此外,为了便于外部执行,Groovy还会在这个自动生成的类添加一个main方法。这个main方法会调用run方法,使得脚本可以命令行或其他环境作为程序执行。...闭包的概念源自函数式编程,它提供了一种定义代码块的方式,这个代码块可以被赋值给变量、作为参数传递给方法或者定义为成员。

10910

tf.variable_scope

,我们获取非重用范围的现有变量时引发异常。...请注意,1.0版本之前包括1.0版本之前,允许(尽管明确地不鼓励)将False传递给重用参数,从而产生了与None略有不同的无文档化行为。...从1.1.0开始传递NoneFalse,因为重用具有完全相同的效果。关于多线程环境中使用变量作用域的注意事项:变量作用域是线程本地的,因此一个线程不会看到另一个线程的当前作用域。...dtype: 在此范围创建变量的类型(默认为传递的范围的类型,或从父范围继承的类型)。use_resource: 如果为False,则所有变量都是常规变量。...进行异步分布式培训时使用约束并不安全。auxiliary_name_scope:如果为真,则使用该范围创建一个辅助名称范围。如果为False,则不触及name作用域。返回值:可以捕获重用的范围。

1.9K20

Python入门(16)

类的名称后跟一对括号,就创建一个类的实例。 接下来是一个缩进的语句块,代表这个类的主体。 示例16_1:本例,我们使用 pass 语句创建一个代码块。 ?...代码解析: (1)、本例,我们定义2个name变量,但它们并不相同,更不会造成混淆。...代码解析: (1)、定义了一个变量x,它将在类的所有实例中有效,注意:使用时需要前置类名,如MyClass.x。 (2)、方法一我们还故意定义了一个同名的局部变量:x=-1。...请注意,它并不能因此影响到方法二的x的值。 7、类的继承 面向对象编程的一个显著特征(也是一大优点)就是对代码重用(Reuse),而重用的实现方法之一就是继承(Inheritance)。...) 实际操作,我们可以可以通过子类的方法名前面加上基类名做前缀,再传入 self 其余变量调用基类的方法。

82810
领券