En django, si configuro un campo en un modelo para una clave externa, "_id"
se agrega al nombre de ese campo. ¿Cómo se puede prevenir esto?Impedir que django agregue "_id" a un campo de clave externa
24
A
Respuesta
28
Puede establecer el atributo del campo db_column
a lo que usted desea.
2
Al usar el campo foráneo en un modelo, Django crea dos campos: uno para el enlace real y otro que hace referencia al otro modelo.
class A(Model):
i = IntegerField()
class B(Model):
a = ForeignKey(A)
En B
no hay ahora dos campos: a
y a_id
. a_id
es el identificador único que se almacena en la base de datos, mientras que a
se puede utilizar para acceder directamente a los campos en A
, así:
b = B.objects.get(...)
b.a.i = 5; # Set the field of A
b.a.save() # Save A
Cuestiones relacionadas
- 1. django admin datos de campo de clave externa agregue
- 2. Django: agregue un campo a un modelo
- 3. "Add New" para campo de clave externa en ModelForm Django
- 4. Django admin, ocultar + signo más en campo de clave externa
- 5. clave externa de django guardar
- 6. ¿Hay alguna manera de autoincrementar un campo de Django con respecto a una clave externa?
- 7. Impedir que IntelliJ agregue archivos iml
- 8. Django: filtrado de propiedades de clave externa
- 9. Impedir que se agregue el enlace delimitador a la URL
- 10. clave externa de Django: obtener modelo relacionado?
- 11. ¿Puedo hacer que el campo de clave externa opcional en el modelo de Django
- 12. Django serializar objetos de clave externa
- 13. Guardar nueva clave externa con forma Django
- 14. Django: list_filter y campos de clave externa
- 15. Django- Obtener modelo de clave externa
- 16. clave externa genérica Django y select_related
- 17. clave externa a varias tablas
- 18. mongoose (mongodb) Alias _id campo
- 19. campo de suma de modelos django de la relación de clave externa
- 20. MENOS Impedir que se agregue menos url relativo
- 21. Django: UserProfile con clave externa única en Django Admin
- 22. Los modelos de Django filtran por la clave externa
- 23. Django: ¿Cómo creo una clave externa sin un nombre relacionado?
- 24. ¿Cómo cambiar el nombre de un campo de clave externa con Sur?
- 25. EJB3NamingStrategy vs ImprovedNamingStrategy Denominación de clave externa
- 26. Django objeto de modelo con la creación de clave externa
- 27. Agregue restricciones de clave externa a tablas existentes en Ruby on Rails (MySQL)
- 28. Django: Comprobar si el atributo de clave externa se establece
- 29. Impedir que se agreguen elementos duplicados a un ListBox
- 30. Solicitar Django resultados de la consulta por la clave externa
que funcionó. ¡Gracias! –
Sería útil tener una configuración como FK_AUTO_ID = False, resulta que me estoy integrando con una base de datos heredada que tiene que escribir código no seco, como basiscd = ForeignKey ('...', db_column = 'basiscd', related_name = 'basecd'. Es ligeramente molesto. Las formas tienen auto_id = Falso disponible en un escenario paralelo. –
O incluso mejor FK_AUTO_ID = 'cd' como en mi caso todos los FK en este proyecto tienen esta convención, que difiere de la predeterminada de Django (imagine FK_AUTO_ID = '_ id'). –