我正在建立一个审计应用程序 我需要检索模型名称。 问题是我不知道审计模型中的模型名称 有没有办法引用通用模型并获得该名称?
我已经建立了一个用户登录/退出模型,将信息保存在字符串中,我想做类似的事情。
@receiver(user_logged_out)
def LogoutWatch(request,*args,**kwargs):
Log = AuditoriaLog()
Log.fecha = datetime.datetime.now()
Log.usuario = request.user.usuario
Log.nombre_u = str(request.user.get_full_name())
Log.cedula_u = str(request.user.usuario.cedula)
Log.actividad = "Cierre de Sesion"
Log.save()
如果我可以获得模型名称,则有一个django函数将模型存储在dict中,然后我可以连接post保存信号以获得我想要的内容。
答案 0 :(得分:1)
使用type(object)
方法可以获得对象类型类的引用。请参阅documentation。
type
类具有__name__
属性,用于存储类名。
此外,django模型为同一提案提供了两个_meta
属性:verbose_name
和verbose_name_plural
。请参阅documentation。
所以,你可以使用其中任何一个:
print type(model).__name__
print type(model)._meta.verbose_name
print type(model)._meta.verbose_name_plural