urls.py
from django.urls import path
from .views import home,CadastroFuncionarios,Listafuncionarios
urlpatterns=[
path('',home,name='Pagina Principal'),
path('/cadastro',CadastroFuncionarios,name='CadastroFuncionario'),
path('/lista',Listafuncionarios.as_views(),name='ListaFuncionario'),
]
models.py
from django.db import models
class formularioFuncionario(models.Model):
nome = models.CharField(max_length=100)
cpf = models.CharField(max_length=15)
telefone = models.CharField(max_length=12)
email = models.CharField(max_length=100)
views.py
from django.shortcuts import render,redirect
from django.views.generic import ListView
from .forms import FormularioCadastroFuncionario
from django.http import HttpResponse
from .models import formularioFuncionario,formularioEmpresa
def home(request):
return render(request,'index.html')
def CadastroFuncionarios(request): # mostrar o formulario baseado no modelo na pagina de html
form = FormularioCadastroFuncionario(request.POST)
if form.is_valid():
form.save()
return redirect('ListaFuncionario')
else:
form = FormularioCadastroFuncionario()
return render(request,'CadastroFuncionario.html',{'form':form})
def Listafuncionarios(ListView):
template_name = 'ListaFuncionarios.html'
model = formularioFuncionario
context_object_name = "funcionarios"
LIstadefuncionarios.html
{% extends 'base.html' %}
{% block title %}
<title>Lista de funcionarios</title>
{% endblock title %}
{% block content %}
<div class="container" align="center">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div class="card">
<div class="card-body">
<h5 class="card-title">Lista de Funcionário</h5>
{% if funcionarios|length > 0 %}
<p class="card-text">
Aqui está a lista de <code>Funcionários</code> cadastrados.
</p>
<table class="table">
<thead class="thead-dark">
<tr>
<th>Nome</th>
<th>Telefone</th>
<th>Email</th>
</tr>
</thead>
<tbody>
{% for funcionario in funcionarios %}
<tr>
<td>{{ funcionario.nome }}</td>
<td>{{ funcionario.telefone }}</td>
<td>{{ funcionario.email }}</td>
<td>
<a href="#"
class="btn btn-info">
Atualizar
</a>
<a href="#"
class="btn btn-outline-danger">
Excluir
</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<div class="text-center mt-5 mb-5 jumbotron">
<h5>Nenhum <code>Funcionário</code> cadastrado ainda.</h5>
</div>
{% endif %}
<hr />
<div class="text-right">
<a href="{% url 'CadastroFuncionario' %}" class="btn btn-primary">
Cadastrar Funcionário
</a>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock content %}