Heads up! To view this whole video, sign in with your Courses Plus account or enroll in your free 7-day trial. Sign In Enroll
Preview
Start a free Courses trial
to watch this video
Change the order of the fields on the update screen.
Resources:
Sometimes we add fields to our models
in the order we think of them, and
0:00
not based on any sort of system or
design, and that's fine.
0:05
Django does not care what
order the fields are in.
0:09
Neither does the admin.
0:12
But the admin is always going to
put the fields it's displaying
0:14
in the order they appear in the model,
0:18
which might not be an order that
makes sense when you're updating.
0:20
Listing all of the ingredients
in the ice cream
0:24
before you give the name of the flavor
doesn't make a lot of sense, right?
0:27
So open up Work Spaces and let's put
some fields in a more logical order.
0:31
Now, let's change the order of
the fields in one of our update screens.
0:37
Click on add next to quizzes.
0:42
This detail page has
a lot of fields in it.
0:45
It might be more helpful to have some
of these fields in a different order.
0:48
For example,
0:51
the most important piece of a quiz is
probably which course it goes with, right?
0:53
So, we might want to move
the course selection to the top,
0:59
instead of having it all the way
down here at the bottom.
1:02
Let's go back to work spaces, and
1:05
open up our admin.pi And
1:08
let's add a new class called quiz admin
and have it inherit from model admin.
1:13
So right here below QuestionAdmin,
just just click below here and
1:19
add a new class, and
it'll inherit from admin.modeladmin,
1:25
and let's just include
one more space here.
1:31
We don't wanna violate pep8.
1:35
Now we wanna make
a variable called fields.
1:40
And assign to that a variable a list
of all the fields that we want
1:45
in the order that we want using
the names of the fields from our model.
1:49
So in this case,
let's have the course come first,
1:54
followed by the title of the quiz,
a description of the quiz,
2:00
the order, and then the total questions.
2:07
And close the list.
2:14
Now down here at the bottom,
where we register our models,
2:17
where we have this admin
site.register(models.Quiz),
2:21
we have to path in the QuizAdmin as well,
just like we did with course.
2:25
So we save all of this, and
let's refresh our page.
2:30
We got a nice error.
2:36
Unknown field.
2:37
A total question is a thing
that needs an S on it.
2:38
That's what we got.
2:43
Let's see.
2:44
And there we have it.
2:47
Now we have the course at the top,
followed by the title, the description,
2:49
the order, and
the total number of questions.
2:52
Wasn't that awesome?
2:56
Customizing the Django admin
is really straightforward
2:58
once you know what you're doing.
3:01
Why don't you take some time to practice
by reordering some of the other fields on
3:03
the other models in the admin.
3:08
I'll see you back here in the next video.
3:10
You need to sign up for Treehouse in order to download course files.
Sign up