Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 15, 2014 07:58:56

vladimirse
Зарегистрирован: 2013-09-02
Сообщения: 69
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранение значений форм в БД

Точно )))) Благодарю!

Офлайн

#2 Окт. 15, 2014 10:19:59

vladimirse
Зарегистрирован: 2013-09-02
Сообщения: 69
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранение значений форм в БД

По ходу дела возник еще один вопрос: как реализовать проверку таких форм (ModelForm)? То, что я делал раньше:

from django import forms
class ContactForm(forms.Form):
    subject = forms.CharField(max_length=100)
    e-mail = forms.EmailField(required=False)
    message = forms.CharField(widget=forms.Textarea)
def clean_message(self):
    message = self.cleaned_data[message]
    num_words = len(message.split())
    if num_words < 4:
    raise forms.ValidationError(“Слишком мало слов!”)
return message

Теперь не работает :-( Попробовал сделать вот так:

def clean_projectName(self):
        projectName = self.instance.projectName
        if len(projectName) < 5:
            raise ValidationError("Ошибка")
        return projectName

Но тоже не прокатило. Покажите пожалуйста рабочий пример проверки форм на созданных на основе модели.

Офлайн

#3 Окт. 15, 2014 10:45:54

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Сохранение значений форм в БД

Выложи проект архивом, лень создавать



Офлайн

#4 Окт. 15, 2014 10:56:20

vladimirse
Зарегистрирован: 2013-09-02
Сообщения: 69
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранение значений форм в БД

Да там куча секретной информации ))) Щас попробую выдернуть само приложение.

Может тогда подскажете как проверять полея описанные вот так:

class ProjectsForms(forms.ModelForm):
    class Meta:
        model = Projects
        fields = ['projectName', 'startDate', 'endDate']
        exclude = ('owner',)
        widgets = {
            'projectName': forms.TextInput(attrs={'title':'Введите краткое наименование проекта', 'error_messages':"Ошибка"}),
            'startDate': SelectDateWidget(years=range(2010, datetime.date.today().year+50)),
            'endDate': SelectDateWidget(years=range(2010, datetime.date.today().year+50))
        }

Отредактировано vladimirse (Окт. 15, 2014 10:56:39)

Офлайн

#5 Окт. 15, 2014 11:10:22

vladimirse
Зарегистрирован: 2013-09-02
Сообщения: 69
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранение значений форм в БД

Разобрался, просто проявления криворучия в коде обнаружилось )

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version