如何从视图中的上下文对象中检索对象或特定字段?

Posted

技术标签:

【中文标题】如何从视图中的上下文对象中检索对象或特定字段?【英文标题】:How to retrieve an object or a particular field from context object in view? 【发布时间】:2015-08-24 03:58:03 【问题描述】:

我的代码如下: dept_id 和 desi_id 是 entry3 的字段 视图.py

def claim(request):
    entries = Child_Info.objects.all()
    entries2 = Employee.objects.filter(emp_name='Suresh Babubhai Vekariya')
    entries3 = Emp_Department.objects.filter(emp_no=12345)
    for a in entries3:
        dept_id = a.dept_id;
        desi_id = a.desi_id

    print dept_id
    ctx =  'entries' : entries ,'entries2' : entries2 

    return render_to_response('myapp/claim.html', ctx)

这是 3 个模型:

class Department(models.Model):
    dept_id = models.CharField(primary_key=True,max_length=20,unique=True)
    dept_name = models.CharField(max_length=20)
    dept_add = models.CharField(max_length=30)
    def _str_(self):
    return self.dept_id

class Emp_Department(models.Model):
    emp_no = models.ForeignKey(Employee)
    dept_id = models.ForeignKey(Department)
    emp_type = models.CharField(max_length=30)
    desi_id =  models.CharField(max_length=30)
    join_date = models.DateField()
    retire_date = models.DateField()

def _str_(self):
    return "%s,%s,%s" %(self.desi_id,self.dept_id,self.emp_no)

class Designation(models.Model):
    desi_id = models.CharField(primary_key=True,max_length=30)
    dept_id = models.ForeignKey(Department)
    title = models.CharField(max_length=20)

def _str_(self):
    return "%s,%s,%s" %(self.desi_id,self.dept_id,self.title)

我想从部门的指定和部门名称中获取标题

【问题讨论】:

这不是有效的python代码。 那是你的真实看法吗?您似乎在 Python 中嵌入了 Django 模板语言,这是无效的。 Python 中的 for 循环在 here 中进行了解释。 但是如何过滤特定字段? 【参考方案1】:

您已经根据特定字段过滤了结果。

entries3 = Emp_Department.objects.filter(emp_no=12345)

如果您尝试询问如何在模板中显示特定字段,然后在 claim.html 文件中,请尝试以下操作:

entries2.0.emp_name

这将显示第一个员工的 emp_name。同样,您可以将 emp_name 替换为要在模板中显示的任何字段。

我希望这是您想问的,因为问题不是很清楚。

【讨论】:

我希望同一个文件[views.py]中的特定字段值从另一个表中获取数据 请提供所有3个模型的字段。

以上是关于如何从视图中的上下文对象中检索对象或特定字段?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 AWS API Gateway 自定义授权方检索 Spring Boot 中的上下文对象?

如何将子上下文中的对象检索到另一个上下文中?

为啥我们将视图和上下文对象作为函数中的参数传递,API 22 [关闭]

如何将上下文对象传递给 NSValueTransformer

如何检索一组对象,按其他对象的字段过滤和排序,所需对象是外键?

如何“告诉”父上下文必须删除和/或插入哪些托管对象?