Dúvida referente ao Django Framework Models ( Innerjoins)
11/06/2019
0
Olá Galera, tudo bem?
Sou novo aqui no DEVMEDIA e gostaria de primeiramente me apresentar, meu nome é Liniker tenho 24 anos e sou um amante da programação apesar de ainda estar engatinhando próximo dos verdadeiros codificadores que existem no mundo.
Enfim indo direto ao ponto alguém consegue me ajudar em relação ao framework Django? estou fazendo um sistema web e acabei de encontrar uma dificuldade em relação ao conceito de Models (MVC), minha dúvida seria a seguinte.
Eu consigo fazer um inner join de duas tabelas ? segue o código a baixo:
Eu tenho duas applicações (apps) Treinamento e Entidade.
Entidade:
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
from phone_field import PhoneField
from datetime import time
# Create your models here.
class Entidade(models.Model):
id = models.AutoField(primary_key=True)
nome_entidade = models.CharField(max_length=70)
razao_social = models.CharField(max_length=70)
codigo_sap = models.PositiveIntegerField(default=0, blank=False)
pessoa_contato = models.CharField(max_length=20)
email = models.EmailField(max_length=254, blank=False, unique=True, error_messages={''required'': ''Porfavor digite seu e-mail.'', ''unique'': ''Já existe esse e-mail cadastrado.''},)
phone = PhoneField(blank=True, help_text=''Seu numero de telefone'')
cep = models.PositiveIntegerField(default=0,blank=False)
endereço = models.CharField(max_length=100)
cidade = models.CharField(max_length=100)
estado = models.CharField(max_length=100)
data_registro = models.DateTimeField(blank=True)
def __str__(self):
return self.nome_entidade
Treinamento:
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
from phone_field import PhoneField
from localflavor.br.forms import BRZipCodeField
from datetime import time
# Create your models here.
class Treinamento(models.Model):
id = models.AutoField(primary_key=True)
nome_treinamento = models.CharField(max_length=50)
categoria = models.CharField(max_length = 50)
conteudo = models.TextField()
requisito = models.CharField(max_length=50)
recursos = models.CharField(max_length=50)
carga_horaria = models.TimeField(auto_now=False, auto_now_add=False)
tipo = models.CharField(max_length=50)
local = models.CharField(max_length=50)
def __str__(self):
return self.nome_treinamento
EU CONSEGUIRIA CRIAR UMA TABELA RESULT DA INTERSECÇÃO DESSAS DUAS TABELAS?
Sou novo aqui no DEVMEDIA e gostaria de primeiramente me apresentar, meu nome é Liniker tenho 24 anos e sou um amante da programação apesar de ainda estar engatinhando próximo dos verdadeiros codificadores que existem no mundo.
Enfim indo direto ao ponto alguém consegue me ajudar em relação ao framework Django? estou fazendo um sistema web e acabei de encontrar uma dificuldade em relação ao conceito de Models (MVC), minha dúvida seria a seguinte.
Eu consigo fazer um inner join de duas tabelas ? segue o código a baixo:
Eu tenho duas applicações (apps) Treinamento e Entidade.
Entidade:
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
from phone_field import PhoneField
from datetime import time
# Create your models here.
class Entidade(models.Model):
id = models.AutoField(primary_key=True)
nome_entidade = models.CharField(max_length=70)
razao_social = models.CharField(max_length=70)
codigo_sap = models.PositiveIntegerField(default=0, blank=False)
pessoa_contato = models.CharField(max_length=20)
email = models.EmailField(max_length=254, blank=False, unique=True, error_messages={''required'': ''Porfavor digite seu e-mail.'', ''unique'': ''Já existe esse e-mail cadastrado.''},)
phone = PhoneField(blank=True, help_text=''Seu numero de telefone'')
cep = models.PositiveIntegerField(default=0,blank=False)
endereço = models.CharField(max_length=100)
cidade = models.CharField(max_length=100)
estado = models.CharField(max_length=100)
data_registro = models.DateTimeField(blank=True)
def __str__(self):
return self.nome_entidade
Treinamento:
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
from phone_field import PhoneField
from localflavor.br.forms import BRZipCodeField
from datetime import time
# Create your models here.
class Treinamento(models.Model):
id = models.AutoField(primary_key=True)
nome_treinamento = models.CharField(max_length=50)
categoria = models.CharField(max_length = 50)
conteudo = models.TextField()
requisito = models.CharField(max_length=50)
recursos = models.CharField(max_length=50)
carga_horaria = models.TimeField(auto_now=False, auto_now_add=False)
tipo = models.CharField(max_length=50)
local = models.CharField(max_length=50)
def __str__(self):
return self.nome_treinamento
EU CONSEGUIRIA CRIAR UMA TABELA RESULT DA INTERSECÇÃO DESSAS DUAS TABELAS?
Liniker
Curtir tópico
+ 0
Responder
Posts
22/06/2019
Vinnicyus Leite
Você precisa criar um relacionamento entre os dois modelos. É possível fazer inner join utilizando o select_related, porém seus modelos não se relacionam um com o outro. Veja ForeingKey, ManytoManyField e OneToOneField no Django.
select_related: https://docs.djangoproject.com/pt-br/2.1/ref/models/querysets/#select-related
select_related: https://docs.djangoproject.com/pt-br/2.1/ref/models/querysets/#select-related
Responder
Clique aqui para fazer login e interagir na Comunidade :)