Em veiculo/view.py

from django.urls import reverse_lazy
from veiculo.forms import FormularioVeiculo
from django.views.generic import ListView, CreateView

...

class CriarVeiculos(CreateView):
    
    model = Veiculo
    form_class= FormularioVeiculo
    template_name = 'veiculo/novo.html'
    success_url = reverse_lazy('listar-veiculos')

Em veiculo/url.py

from django.urls import path
from veiculo.views import *

urlpatterns = [
    path('', ListarVeiculos.as_view(), name='listar-veiculos'),                      # /veiculo/
    path('novo/', CriarVeiculos.as_view(), name='criar-veiculos'),
    path('deletar/<int:pk>/', DeletarVeiculos.as_view(), name='deletar-veiculos'),   # /veiculo/deletar/1/
    path('editar/<int:pk>/', EditarVeiculos.as_view(), name='editar-veiculos'),      # /veiculo/editar/1/
    path('exibir/', ExibirVeiculos.as_view(), name='exibir-veiculos'),      # /veiculo/exibir/1/

]

Criação do forms.py

from django.forms import ModelForm
from veiculo.models import Veiculo

class FormularioVeiculo(ModelForm):

    class Meta:
        model = Veiculo
        exclude = []

Criar o “criar.html”