Los siguientes modelos describen una vulnerabilidad y las URLs en Internet que hacen referencia a esa vulnerabilidad. Supongamos que cada URL solo habla de 1 vulnerabilidad, y que muchas URL analizarán esa vulnerabilidad. ¿Es esta la manera correcta de diseñar el modelo?Django One-To-Many Models
class Vuln(models.Model):
pub_date = models.DateTimeField("Publication Date")
short_description = models.CharField("Description", max_length=70)
reference_urls = models.ForeignKey(Url, unique=True, blank=True, verbose_name="Reference URLs")
vendor = models.ForeignKey(Vendor, verbose_name="Vendor")
class Url(models.Model):
url = models.URLField("URL", max_length=200)
La aplicación de administración ofrece un cuadro de "selección" para las URL de referencia, que no es lo que quiero. Cuando agrego un nuevo objeto de vulnerabilidad, todas las URL existentes que se han ingresado aparecen en ese menú desplegable, que de nuevo no es natural. Siento que esto debería comportarse de manera muy similar a como lo haría un comentario en un blog, es decir. el comentario se aplica a una sola entrada de blog y a ninguna otra y esa entrada de blog puede tener muchos comentarios. ¿Cómo expreso esto en un modelo de Django?
Además, como una cuestión de estilo, sería mejor usar 'Vulnerabilidad' como nombre de tabla, en lugar de' Vuln' - es más largo, pero al menos no piensas "¿Qué demonios? es un vuln "como lo hice cuando lo ves". – LeafStorm