[pyar] ManyToMany en Admin de Django
Eddy Ruiz
eddyraz.fl en gmail.com
Vie Mayo 18 22:23:24 -03 2018
Bueans Noches, tengo un problema
en un projecto de DJango 1.11 con Python 3.5 y PostgreSQL 9.5 tengo el
siguiente modelo
models.py
****************************************************************************************************************************
from django.db import models
class Toppings(models.Model):
nombre_topping = models.CharField(max_length=20,default="Teclee el
nombre del Topping")
class Meta:
managed = True
verbose_name = 'agrego'
verbose_name_plural = 'lista de agregos'
def __str__(self):
return nombre_topping
class Pizza(models.Model):
tipo_pizza = models.CharField(max_length=20,default="Teclee el nombre
de la Pizza")
precio = models.DecimalField(max_digits=4,decimal_places=2)
topping = models.ManyToManyField(Toppings)
class Meta:
managed = True
verbose_name = 'pizza'
verbose_name_plural = 'Pizzas del Dia'
def __str__(self):
return self.tipo_pizza
******************************************************************************************************************************************
y en la parte del Admin tengo lo siguiente:
******************************************************************************************************************************************
from django.contrib import admin
from .models import Toppings,Pizza
# Register your models
here.
class ToppingsAdmin(admin.ModelAdmin):
list_display = ('nombre_topping',)
search_fields = ['nombre_topping']
class PizzaAdmin(admin.ModelAdmin):
list_display = ('tipo_pizza','precio','get_toppings')
search_fields = ['tipo_pizza','precio','get_toppings']
def get_toppings(self, obj):
short_description = 'Agregos'
allow_tags = True
return "\n".join([t.nombre_topping for t in
obj.topping.all()])
admin.site.register(Toppings,ToppingsAdmin)
admin.site.register(Pizza,PizzaAdmin)
*****************************************************************************************************************
El asunto esta en que se muestran los toppings(agregos) en el multiselect
de la pagina del Admin de Django como Topping Object e igual al
eliminarlos, sin embargo en el en la pagina que los lista en el admin se
muestran los valores que se especifica en la funcion get_toppings sin
problemas,
Agradeceria que alguien me iluminara al respecto pues he buscado en
Internet y el asunto se queda ahi no aparecen respuestas a esto, Gracias de
Antemano.
--
********************************************************************************
Eddy Ruiz Azcuy
Network Administrator. Python Coder and OpenSource User
tel : + 53 5326 0182
La Habana Cuba
********************************************************************************
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20180518/a8ae7aa0/attachment-0001.html>
Más información sobre la lista de distribución pyar