We are going to allow users to bookmark images
from external websites. The user will provide the URL of the image, a title, and optional description. Our application will download the image and create a new Image
object in the database.
Let's start by building a form to submit new images. Create a new forms.py
file inside the images application directory and add the following code to it:
from django import forms from .models import Image class ImageCreateForm(forms.ModelForm): class Meta: model = Image fields = ('title', 'url', 'description') widgets = { 'url': forms.HiddenInput, }
As you can see, this form is a ModelForm
built from the Image
model including only the title
, url
, and description
fields. Our users are not going to enter the image URL directly in the form. Instead, they are going to use a JavaScript tool to choose an image from an external site and our form will receive its URL as a parameter...