[pyar] django problemas uso de la clase meta y el

Daniel Julio Stamm danieljstamm en gmail.com
Vie Jul 10 22:05:18 ART 2015


Martín, muchas gracias!!! Lo busque por todos lados y nunca me percaté de
la mayúscula.
Error de principiante

Saludos
Daniel

¡Hola Daniel!
>
> Bienvenido entonces al mundo Python (y aprovecho también para presentarme
> en la lista).
>
> Cuando no se sobreescriben los meta options Django genera como nombre de
> tabla [APP_LABEL]_[MODEL_NAME], según veo vos especificás la inner class
> meta, pero su nombre correcto es Meta (con M mayúscula). Python es case
> sensitive.
>
> Seguro tu app se llama "consultas", por eso te requiere el nombre de tabla
> consultas_webcustomer.
>
>
> Espero haberte ayudado,
> Abrazo,
>
> Martin Dimondo
>
> El 10 de julio de 2015, 10:40, Daniel Julio Stamm <danieljstamm en gmail.com>
> escribió:
>
> > Saludos gente, les comento, soy nuevo en el mundo Python y por ende
> > django. Mi problema es el siguiente:
> > Estoy creando el modelo sobre unas tablas pre-existentes en una base
> > oracle. El tema es que al setear el atributo db_table de la clase meta
> > dandole el nombre real no hay cambios e intenta hacer select a la tabla
> que
> > django nombra por defecto. Para ser más claro les paso la definición de
> la
> > clase en models.py
> >
> > from __future__ import unicode_literals
> > from django.db import models
> >
> > # Create your models here.
> > class WebCustomer (models.Model):
> >     username = models.CharField(max_length=30,primary_key=True)
> >     customer_id = models.DecimalField(max_digits=15,decimal_places=0)
> >     name = models.CharField(max_length=60)
> >
> >     class meta:
> >         managed = False
> >         db_table = '"web_customer"'
> >
> >     def __str__ (self):
> >         return str(self.customer_id) + ', ' + self.username
> >
> > Al intentar hacer un select de todo con WebCustomer.objects.all()
> devuelve
> > el error ORA-00942: table or view does not exist.
> >
> > Y al hacer un trace de la consulta con django.db.connection
> >
> > sale lo siguiente
> >
> > [{'time': '2.945', 'sql': 'QUERY = \'SELECT * FROM (SELECT "_SUB".*,
> > ROWNUM AS "_RN" FROM (SELECT "CONSULTAS_WEBCUSTOMER"."USERNAME" AS Col1,
> > "CONSULTAS_WEBCUSTOMER"."CUSTOMER_ID" AS Col2,
> > "CONSULTAS_WEBCUSTOMER"."NAME" AS Col3 FROM "CONSULTAS_WEBCUSTOMER")
> "_SUB"
> > WHERE ROWNUM <= 21) WHERE "_RN" > 0\' - PARAMS = ()'}]
> >
> > Lo suplí creando una tabla con el nombre CONSULTAS_WEBCUSTOMER pero me
> > gustaría saber cual es la solución ya que no siempre voy a poder hacer
> ésto.
> >
> > Si alguien me puede ayudar ...
> > Gracias de antemano
> > Daniel
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150710/34e99db8/attachment-0001.html>


More information about the pyar mailing list