Estoy trasladando un proyecto de Rails a Django con una base de datos heredada. En Rails tuve una asociación polimórfica que me permitió agregar una nota al pie a cualquier fila en la base de datos. Estoy tratando de implementar lo mismo en la aplicación Django. Encontré la documentación sobre Relaciones genéricas y se ve perfecto. Desafortunadamente, primero necesito crear nuevos campos en mi base de datos heredada para mantener el ID de ContentType para los modelos relevantes. Solo utilicé la asociación polimórfica con 2 tablas, así que todo lo que necesito son esos dos identificadores correspondientes de la aplicación Django, pero parece que no puedo encontrar el comando apropiado para buscar una ID de ContentType en Django.Obtener ID de ContentType en Django para la relación genérica
Cualquier sugerencia es bienvenida. Traté de buscar en las preguntas anteriores, pero no pude encontrar lo que estoy buscando. Muchas gracias por su tiempo y ayuda.
¡Gracias! Parece que podría haber obtenido la respuesta que necesitaba antes, simplemente no me di cuenta. ¿Los ID ContentType suelen ser cadenas? A cada número le sigue una 'L' - content_type_id para Letter es "43L" para la asignación es "44L". –
Así que todavía no sé qué pasa con la 'L', pero hice lo que debería haber hecho en primer lugar y fui a la base de datos subyacente para mirar la tabla. Efectivamente, los números que obtengo son correctos, pero la L no se encuentra por ningún lado. Extraño. ¡Pero muchas, muchas gracias! –
La L es una cosa muy molesta de Django: el tipo de id es "long int" en el db, por lo que en algunas circunstancias sale con la L añadida. Si lo convierte en int ('int (44L)'), debe obtener 44. – Colleen