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. Otra forma de Django: clave externa en el campo oculto
- 4. "Add New" para campo de clave externa en ModelForm Django
- 5. Django admin, ocultar + signo más en campo de clave externa
- 6. clave externa de django guardar
- 7. ¿Hay alguna manera de autoincrementar un campo de Django con respecto a una clave externa?
- 8. Impedir que IntelliJ agregue archivos iml
- 9. Django: filtrado de propiedades de clave externa
- 10. Impedir que se agregue el enlace delimitador a la URL
- 11. clave externa de Django: obtener modelo relacionado?
- 12. ¿Puedo hacer que el campo de clave externa opcional en el modelo de Django
- 13. Django serializar objetos de clave externa
- 14. Guardar nueva clave externa con forma Django
- 15. Django: list_filter y campos de clave externa
- 16. Django- Obtener modelo de clave externa
- 17. clave externa genérica Django y select_related
- 18. clave externa a varias tablas
- 19. mongoose (mongodb) Alias _id campo
- 20. campo de suma de modelos django de la relación de clave externa
- 21. MENOS Impedir que se agregue menos url relativo
- 22. Django: UserProfile con clave externa única en Django Admin
- 23. Los modelos de Django filtran por la clave externa
- 24. Django: ¿Cómo creo una clave externa sin un nombre relacionado?
- 25. ¿Cómo cambiar el nombre de un campo de clave externa con Sur?
- 26. EJB3NamingStrategy vs ImprovedNamingStrategy Denominación de clave externa
- 27. Django objeto de modelo con la creación de clave externa
- 28. Agregue restricciones de clave externa a tablas existentes en Ruby on Rails (MySQL)
- 29. Django: Comprobar si el atributo de clave externa se establece
- 30. Impedir que se agreguen elementos duplicados a un ListBox
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'). –