2012-02-28 1 views
-3
class Entry(models.Model): 
    .... 
    slug = models.SlugField(help_text = "You do not need to change this unless you want to change the url") 

class Meta: 
    verbose_name_plural = "Entries" 

def __unicode__(self): 
    return self.title 

def get_absolute_url(self): 
    cat = slugify(self.category)  
    return "%s/%s/" % (cat,self.slug) 

ビュー

def index(request): 
    all_entries = Entry.objects.filter(status=1) 
    treatments = all_entries.filter(category='treatments') 
    female = all_entries.filter(category='female') 
    male = all_entries.filter(category='male') 
    work = all_entries.filter(category='work') 

    return render_to_response('index.html',locals()) 

def entry_page(request,slug_add): 
    all_entries = Entry.objects.filter(status=1) 
    page = all_entries.get(slug=slug_add) 

    treatments = all_entries.filter(category='treatments') 
    female = all_entries.filter(category='female') 
    male = all_entries.filter(category='male') 
    work = all_entries.filter(category='work') 
    return render_to_response('index.html',locals()) 

URL

url(r'^$','hypno_pages.views.index'), 
url(r'^admin/', include(admin.site.urls)), 
url(r'^$','hypno_pages.views.index'), 
url(r'^(treatments|male|female|work)/(?P<slug_add>[a-zA-Z0-9-]+)/$','hypno_pages.views.entry_page'), 

テンプレート

<div class="subnav ui-corner-all"> 
    <h3>xxxxx can help to treat any of the following conditions </h3> 
<ul class = 'float' >  
     {% for line in treatments|slice:":5" %} 
     <li ><a href='{{line.get_absolute_url}}'>{{ line.title }}</a></li> 
    {% empty %} 

     {% endfor %} 
    </ul> 
    <ul class = 'float'> 
    {% for line in treatments|slice:"5:10" %} 
     <li ><a href="{{line.get_absolute_url }}" >{{ line.title }}</a></li> 
    {% empty %} 
    {% endfor %} 
</ul> 
    ....... 

テンプレートコードである*編集*を、複製続けます他の部分はちょうど繰り返されます。DjangoのURLは(ダイナミックナビゲーション)それを切り捨て

私の主なインデックスページには、多くのリンクを持つドロップダウンボックスを持つナビゲーションバーがあります(クライアントが何かを追加したらデータベースから動的に追加されます)。 「http://127.0.0.1:8000/treatments/what-to-do/」というリンクをクリックするとリンク先のページに移動しますが、ナビゲーションバーのすべてのリンクが「http://127.0」に変わります.0.1:8000/treatment/what-to-do/treat/what-to-do/'特定のリンクにアクセスする。 私はDjangoで1週間、何かがPythonでちょうど足りないかもしれない。

+0

あなたの問題の原因はどのコードなのでしょうか? – Marcin

+0

@ephan - テンプレートコードのうち、生成されているリンクを示す部分を投稿することをお勧めします。 –

+0

@DominicRodger私はちょうどテンプレートコードを入れました。 – ephan

答えて

0

私の場合は、あなたが「hrefs」で絶対パスを使用する必要があるようです。リンクを使用すると、リンクは相対的でappあなたが既にいる(URL)パスに達しました。

try <a href="/{{line.get_absolute_url }}" >

また、get_absolute_url機能には@pemarlinkデコレータを使用します。見てくださいhere

+0

ありがとう、試してみました、助けてくれなかったし、数日間パーマリンクと戦っています。URLは常に空白です。私の問題のほとんどは基本的なもので、まだ学習しています。今ではジャンゴ文脈この問題のプロセッサー。 – ephan