我一直在练习探戈与Django练习,以切齿进入Django。快完成了,但是Ajax part有问题。在
未调用自动添加页面的Ajax函数。问题是什么,因为其他函数正在被调用。 在shell提示符下,根本没有调用ajax函数。需要帮助。在
附上相关代码。这是相同的网站链接上面。 静态/随机-阿贾克斯.js在
$('.rango-add').click(function(){
var catid = $(this).attr("data-catid");
var title = $(this).atrr("data-title");
var url = $(this).attr("data-url");
$.get('/rango/auto_add_page/', {category_id: catid, url: url, title: title}, function(data){
$('#pages').html(data);
me.hide();
});
});
模板/rango/类别.html在
^{pr2}$兰戈/视图.py在
@login_required
def auto_add_page(request):
context = RequestContext(request)
cat_id = None
url = None
title = None
context_dict = {}
if request.method == 'GET':
cat_id = request.GET['category_id']
url = request.GET['url']
title = request.GET['title']
if cat_id:
category = Category.objects.get(id=int(cat_id))
p = Page.objects.get_or_create(category=category, title=title, url=url)
pages = Page.objects.filter(category=category).order_by('-views')
#Adds our results list to the template context under name pages.
context_dict['pages'] = pages
return render_to_response('rango/page_list.html', context_dict, context)
兰戈/网址.py在
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^goto/$', views.track_url, name='track_url'),
url(r'^add_category/$', views.add_category, name='add_category'),
url(r'^auto_add_page/$', views.auto_add_page, name='auto_add_page'),
完整的代码位于link。在
你的代码很好,你只需要在/tango/templates/rango/page中定义模板_列表.html. 此模板包含以下代码:
在类别模板中,必须定义以下代码:
^{pr2}$我现在正在学习本教程的这一部分,只想补充一下赫克托的答案。为了避免重复代码以显示页面列表,我执行了以下操作:
我在tango/rango/templatetags/rango中添加了一个get\u page_list()方法_附加.py,类似于本教程前面部分中用于显示类别列表的get_category_list()方法。在
然后我们只需要加载rango_extras并调用tango/templates/rango中的get_page_list()方法/类别.html。在
^{pr2}$这允许您在首次加载类别页面时显示页面列表,然后在从搜索区域添加类别时刷新该列表,而不必重复任何代码。在
相关问题 更多 >
编程相关推荐