Попытайтесь вставить следующее в файл JavaScript в Visual Studio 08 и игре вокруг с ним:
var Namespace = {};
Namespace.AnotherNamespace = {};
Namespace.AnotherNamespace.annoyingAlert = function(_message)
{
/// The message you want alerted two times
/// This is really annoying!!
alert(_message);
alert(_message);
};
Intellisense в изобилии!
[еще 114] информация об этом (включая то, как сослаться на внешние файлы JavaScript для использования в крупных библиотеках) может быть найдена на блог .
Scott Gu
Самый простой способ - предоставить свой набор ошибок по умолчанию в определение поля формы. Поля формы могут принимать для этого именованный аргумент. Например:
my_default_errors = {
'required': 'This field is required',
'invalid': 'Enter a valid value'
}
class MyForm(forms.Form):
some_field = forms.CharField(error_messages=my_default_errors)
....
Надеюсь, это поможет.
Вы можете посмотреть на отличную поддержку i18n в Django.
Хм, похоже, нет простого решения проблемы.
Просматривая код django, я обнаружил, что сообщения об ошибках по умолчанию жестко закодированы в каждом классе поля формы, например:
class CharField(Field):
default_error_messages = {
'max_length': _(u'Ensure this value has at most %(max)d characters (it has %(length)d).'),
'min_length': _(u'Ensure this value has at least %(min)d characters (it has %(length)d).'),
}
И самый простой способ - использовать аргумент error_messages
, поэтому мне пришлось написать функцию-оболочку:
def DZForm(name, args = {}):
error_messages = {
'required': u'required',
'invalid': u'invalid',
}
if 'error_messages' in args.keys():
args['error_messages'] = error_messages.update(args['error_messages'])
else:
args['error_messages'] = error_messages
return getattr(forms, name)(**args)
Если smdb знает более элегантный способ сделать это, то действительно будет рад увидеть это :)
Спасибо!
Поскольку эта страница появляется при поиске, возможно, стоит добавить мои 0,02 доллара, даже если вопрос старый. (Я все еще привыкаю к особому этикету Stack Overflow.)
Знак подчеркивания («_») - это псевдоним (если это правильный термин) для ugettext_lazy; просто посмотрите на операторы импорта в верхней части файла с «жестко запрограммированными» сообщениями. Тогда должны помочь документы по интернационализации Django, например http://www.djangobook.com/en/2.0/chapter19/