我在Django中创建一个自定义表单对象,它具有覆盖的__init__方法.覆盖该方法的目的是基于新参数动态生成下拉框.
例如,
class TicketForm(forms.Form):
Type = Type.GetTicketTypeField()
def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None,
initial=None, label_suffix=':', empty_permitted=False,
ticket=None):
if ticket:
self.__class__.State = State.GetTicketStateField(ticket.Type)
super(forms.BaseForm, self ).__init__(data=data, files=files,
auto_id=auto_id, prefix=prefix, initial=initial,
label_suffix=label_suffix, empty_permitted=empty_permitted)
Run Code Online (Sandbox Code Playgroud)
此解决方案不起作用.看来这些字段是在调用__init__之前创建的.我认为这个问题很常见.什么是Django处理这些类问题的方法.
我基本上是PEAR(和PhpDocumentor)的新手; 我使用PEAR CLI安装了PhpDocumentor,一切似乎都没问题......直到我去使用它,此时我收到以下错误:
Warning: require(PhpDocumentor/phpDocumentor/phpdoc.inc):
failed to open stream: No such file or directory in
/usr/local/bin/phpdoc on line 40
Fatal error: require(): Failed opening required
'PhpDocumentor/phpDocumentor/phpdoc.inc' (include_path='.:/usr/share/pear')
in /usr/local/bin/phpdoc on line 40
Run Code Online (Sandbox Code Playgroud)
我在网上找不到任何关于错误的内容,所以我再次通过命令行卸载/重新安装,没有错误,但是我遇到了同样的问题.我忽略了什么吗?正如我所说,我对PEAR很新:)
谢谢.d
我一直在研究NerdDinner教程,其中大部分都是有道理的.我不确定的是为什么Repository直接在Controller中使用而不是Model对象.例如,如果我们想要实现我们自己的会员系统并且它有一个带有Login方法的AccountController,那么连接它的最佳解决方案是什么?例如
Login(username,password){
repo = AccountRepository
account = repo.getLogin(username,password)
//check account isn't locked
//check account has been verified etc etc
//throw error or proceed to secure area
}
Run Code Online (Sandbox Code Playgroud)
要么
Login(username,password){
repo = AccountRepository
account = repo.getLogin(username,password)
account.login() //business logic is handled in Account (Model)
}
Run Code Online (Sandbox Code Playgroud)
要么
Login(username,password){
//no reference to repository
account = Account
//Account (Model) uses repository and handles business logic
account.login(username,password)
}
Run Code Online (Sandbox Code Playgroud)
我建议让Account对象直接使用AccountRepository,而不是AccountController从AccountRepository获取信息,然后将其传递给Account对象,例如
NerdDinnner风格:
1登录请求
2 AccountController使用AccountRepository根据请求获取登录详细信息
3 AccountController使用Account对象并传入步骤1中的信息
4帐户对象处理请求并通知AccountController
我在暗示:
1登录请求
2 AccountController使用Account对象根据请求处理登录
3帐户对象使用AccountRepository获取登录详细信息
4帐户对象处理请求并通知AccountController
后一种风格的原因是,从AccountRepository返回登录详细信息之后,将会有业务规则要遵循,例如帐户已锁定,帐户已验证等.如果使用第一种样式,则获取详细信息然后使用它们的逻辑将被拆分超过2个步骤.后一种风格将所有逻辑保持在一起,同时仍然使用AccountRepository,例如
Account.Login(username,password){
repo …Run Code Online (Sandbox Code Playgroud) 如何使用jQuery设置无线电选项onload?
需要检查是否未设置默认值,然后设置默认值
有一个编程"规则"表明,当需要知道'xyz'时,方法应该代替'x',直接询问'z'.我只是不记得这个名字.
我正在寻找的方法是在Lotus Notes 8.5上自动执行功能测试.我们尝试过不同的工具,包括Testcomplete 6和Rational Robot 7.但我们发现了识别对象和实现验证的问题.
有没有人试图自动化这种类型的测试?您为此推荐哪些工具(方法)?
我想知道是否有可能在Domino/LotusScript上创建代码以使用代理自动执行这些测试(有没有人成功实现此方法)?
谢谢!
我在尝试ruby脚本/控制台时遇到此错误
Rails需要RubyGems> =.请安装RubyGems并重试
我正在运行ruby 1.8.6和rails 2.3.2并且我安装了RubyGems,所以这可能是$ PATH问题?
我正在尝试使用OLEDB写入excel文件(没有自动化).我从其他应用程序获得了大约500行数据,然后使用"INSERT INTO .."查询逐个写入Excel文件.我确信从其他应用程序读取数据没有延迟.我查了一下.在大约3分钟内写入500行的excel文件所花费的总时间.这太多了.这绝对是因为文件写入操作.
什么是使这种速度快的最佳方法?我应该使用其他一些技巧写作吗?我应该尝试一种自动化技术吗?
http://support.microsoft.com/kb/306023 此链接显示了许多技术,但不确定使用哪种技术.
假设我有这个字符串:
s = '<p>Hello!</p>'
Run Code Online (Sandbox Code Playgroud)
当我将此变量传递给模板时,我希望它呈现为原始html.查看文档,我看到我可以使用安全过滤器:
{{s|safe}}
Run Code Online (Sandbox Code Playgroud)
或禁用autoescape:
{%autoescape off}
{{s}}
{%endautoescape%}
Run Code Online (Sandbox Code Playgroud)
或者在python代码中声明它是安全的:
from django.utils.safestring import mark_safe
s = mark_safe(s)
Run Code Online (Sandbox Code Playgroud)
这些选项都不适用于我.无论我做什么,字符串显示为:
<p>Hello!</p>
Run Code Online (Sandbox Code Playgroud)
我一定是错过了什么,只是弄不清楚是什么.是否存在某些不允许逃避的安全设置?
编辑:奇怪,我重新启动计算机后问题似乎消失了.
如果我在模块内部使用Object作为我的类的名称,它有任何缺点吗?
module Some
class Object; end
end
Run Code Online (Sandbox Code Playgroud)