如果我理解你的问题,你是问你是否应该在你的代码中硬编码一个字符串值。在编译语言中,您经常使用对字符串的引用,而不是输入实际的字符串。翼:
message.success(request, message_resource.success)
这使您可以自由更改字符串值,而无需重新编译代码,并在某些情况下提高性能。
因为Python是动态的,这确实不是必需的,但取决于项目的大小,可能是有益的。
想象一下,人们说不同语言的人使用该软件的情况,您可以在代码中的其他位置检测到所需的语言,并将message_resource.success
以及任何其他字符串初始化为所述语言。
这里是一个简单的例子:
german.py
# german language messages
success = "Sie folgten!"
failure = "Sie fallen aus!"
english.py
#english language messages
success = "You succeeded!"
failure = "You fail!"
main.py
# main
# import english language
message_resource = __import__('english');
print message_resource.success
print message_resource.failure
# import german language
message_resource = __import__('german');
print message_resource.success
print message_resource.failure
“硬编码”?有什么选择? I18N翻译的消息?还是你有其他的想法? – 2010-11-24 16:52:04