Мне нравится подход LINQ.
, Если Вы хотите ограничить его все прописные буквы (т.е. никакие пробелы и т.д.):
return input.All(c => char.IsUpper(c));
или использование преобразования группы метода:
return input.All(char.IsUpper);
, Если Вы хотите просто запретить строчные буквы:
return !input.Any(c => char.IsLower(c));
или
return !input.Any(char.IsLower);
Обновление 2016: согласно приведенному ниже ответу Стэна современные версии django позволяют установить can_delete = True
в подклассе GenericStackedInline
, поскольку он наследуется от InlineModelAdmin
Я уже сталкивался с этим раньше - по какой-то причине передача can_delete в качестве аргумента не работает, но установка его в методе init набора форм работает. Попробуйте следующее:
class MyInlineFormset(generic.generic_inlineformset_factory(MyModel)):
def __init__(self, *args, **kwargs):
super(MyInlineFormset, self).__init__(*args, **kwargs)
self.can_delete = False
затем во встроенном классе администратора:
class MyModelStackedInline(generic.GenericStackedInline):
model = MyModel
formset = MyInlineFormset
extra = 0