36 lines
996 B
Python
36 lines
996 B
Python
from django import forms
|
|
from django.forms import ModelForm, ImageField
|
|
|
|
from filer.models.imagemodels import Image
|
|
|
|
from aircox.models import Comment, Program
|
|
|
|
|
|
class CommentForm(ModelForm):
|
|
nickname = forms.CharField()
|
|
email = forms.EmailField(required=False)
|
|
content = forms.CharField(widget=forms.Textarea())
|
|
|
|
nickname.widget.attrs.update({"class": "input"})
|
|
email.widget.attrs.update({"class": "input"})
|
|
content.widget.attrs.update({"class": "textarea"})
|
|
|
|
class Meta:
|
|
model = Comment
|
|
fields = ["nickname", "email", "content"]
|
|
|
|
|
|
class ProgramForm(ModelForm):
|
|
new_cover = ImageField(required=False)
|
|
|
|
class Meta:
|
|
model = Program
|
|
fields = ["content"]
|
|
|
|
def save(self, commit=True):
|
|
file_obj = self.cleaned_data["new_cover"]
|
|
if file_obj:
|
|
obj, _ = Image.objects.get_or_create(original_filename=file_obj.name, file=file_obj)
|
|
self.instance.cover = obj
|
|
super().save(commit=commit)
|