2016-03-07 92 views
-1

我的问题与this question有关。在Django模板中获得mongodb“_id”

我想显示在过去2天django模板中的所有_id mongo数据库,但无法得到它。

这是错误:

error

这是我想要的代码:

views.py

register = template.Library() 
port = 27019 
client = MongoClient(port=port) 
mydb = client.catalogDB 
data = mydb.productCatalog 

def index(request): 
    values = data.find() 
    @register.filter("mongo_id") 
    def mongo_id(value): 
     return str(value['_id']) 
    return render(request, 'product.html', {"values":values}) 

product.html

<ul class="row catalog-list"> 
    {% for value in values %}  
    <li class="col-xs-12 col-sm-6 col-md-4 col-lg-4"> 
     <div> 
      <img src={{value.image_url_medium}}> 
      <label> 
      <input type="checkbox" name="sync-check" class="catalog-checkbox"> 
      </label> 
     </div> 
     <div> 
      {% csrf_token %} 
      <h4 class="ellipsis-text catalog-item-name" tooltip={{value.name}}><span class="catalogProductId">{{value.name}}</span></h4> 
      {% load views %} 
      <h5 >Product Id: {{ object|mongo_id }}</h5> 
      <h5>Category:{{value.catagory}}</h5> 
      <h5>Best Price: {{value.best_price}}</h5> 
      <h5>Best Price Vendor: {{value.best_price_vendor}}</h5> 
      <h5 class="ellipsis-text">Link: 
      <a href={{value.best_price_vendor_url}}>{{value.best_price_vendor_url}}</a> 
      </h5> 
     </div> 
    </li> 
    {% endfor %} 
    <h2 class="message">Sorry no records found</h2> 
</ul> 

虽然,我尝试将名称更改为静态,缓存等,但仍然没有运气。

+1

你的错误* *显然无关与访问'_id':信息是明确的,“意见”是不是一个模板标签库。你为什么要加载? –

+0

@DanielRoseman感谢您的评论。我是新来的python和你的帮助,我想出了如何做到这一点。 –

回答