2016-03-18 6 views
0

私は干し草の山を使用するチュートリアルを、以下の午前、およびそのビューテンプレートは、このhaystackはモデルオブジェクトまたはその一部だけを返すとしますか?

{% for result in results %} 

    {% with post=result.object %} 

    <h4><a href="{{ post.get_absolute_url }}">{{ result.title }}</a></h4> 
    {{ post.body|truncatewords:5 }} 
    {% endwith %} 
    {% empty %} 
    <p>There are no results for your query.</p> 
{% endfor %} 

ように設定されている。これは私の

{% with post=result.object %} 

、通常はこの

<h4><a href="{{ post.get_absolute_url }}">{{ result.title }}</a></h4> 

て興味の一部であります私が構文を読んだことから、

result.object.get_absolute_url 

が、彼は明らかに私の事はこれですオブジェクト

せずに彼の仕事をするために、この

with post=result.object 

をしました。私はget_absolute_urlにアクセスできません。実際のオブジェクトが返されることはありません。

{% for result in results %} 
    {% with post=result.object %} 
    {{result.publish}}<br> 
    {{result.title}}<br> 
    {{result.body}}<br><hr> 
    #...... 

をが、これはちょうど私が実際のオブジェクトを取得することができますどのように作品を剥離し、実際のオブジェクトではありません。それらを今、この

publish = indexes.DateTimeField(model_attr='publish') 
title = indexes.CharField(model_attr='title') 
body = indexes.CharField(model_attr='body') 

を使用して得られる、それだけの作品、私はこれを行うことができます私はこの

slug = indexes.CharField(model_attr='slug') 
を行う代わりになるの

href="{{result.object.get_absolute_url}}" 

を使用することができます

その後、あなたははresult.objectで、オブジェクトを持っていないこの

href="{% url 'blog:post_detail' result.slug %} 

答えて

0

を行うに持ちます。 withステートメントを使用してそれをpostに割り当てましたが、その変数を完全に無視しました。

+0

応答ありがとうございます。それが彼のコードなので、割り当てを無視してください。私はオブジェクトを持っている場合、なぜ私はこの結果を行うことができません。オブジェクト.get_absolute_url。私が試して、hrefのためにそれを使用し、要素を調べるなら、hrefは空白です。返される唯一のものは、タイトル= indexes.CharField(model_attr = 'title') にこれを行ったこと以外は、オブジェクトを返さないことです。私はこのチュートリアルを逐語的に続けました。また、これは私の2回目のhaystackを使用していると私は 'result.title'を使用することができるように見えるだけです 'result.object.title' – losee

関連する問題