小编mag*_*rth的帖子

在Ajax调用之后使用Django模板呈现JSON对象

我一直在努力理解在Django中Ajax的最佳方法是什么.通过阅读这里和那里的东西我收集到的常见过程是:

  1. 使用一些JavaScript库(例如,jQuery)制定您的Ajax调用,在Django中设置一个捕获调用并将其传递给视图函数的URL模式

  2. Python视图函数中检索您感兴趣的对象并以JSON格式或类似方式将它们发送回客户端(通过使用内置的序列化程序模块或simplejson)

  3. 在JavaScript中定义一个回调函数,接收JSON数据并解析它们,以便创建需要显示的任何HTML.最后,JavaScript脚本将HTML放在任何位置.

现在,我仍然没有得到的是Django模板如何与所有这些相关?显然,我们根本没有充分利用模板的力量.理想情况下,我认为传回JSON对象和模板名称会很好,这样可以迭代数据并创建HTML块.但也许我在这里完全错了......

我发现这个方向的唯一资源是这个片段(769),但我还没有尝试过.显然,在这种情况下会发生的是,所有生成的HTML都是在服务器端创建的,然后传递给客户端.JavaScript-callback函数只需要在正确的位置显示它.

这会导致性能问题吗?如果没有,即使不使用上面的代码片段,为什么不使用Python而不是前端直接在后端格式化HTML?

非常感谢!

更新:请使用片段942,因为它是上面的增强版!我发现继承支持这种方式效果更好..

python django ajax templates json

65
推荐指数
4
解决办法
4万
查看次数

是否有django的图像注释应用程序?

我正在寻找一个Django应用程序,它可以让我选择部分图像并用标签或文本"注释"它们.

我猜一种方法可能是使用插件,如jquery-image-annotate,并将其与我的django应用程序(最好是管理员)集成 - 但我想知道是否已经有了这样做.谢谢!

django annotations image

7
推荐指数
1
解决办法
682
查看次数

使用内联表单中的额外字段 - save_model,save_formset,无法理解差异

假设我处于通常情况下,在many2many关系中有额外的字段:

class Person(models.Model):
    name = models.CharField(max_length=128)

class Group(models.Model):
    name = models.CharField(max_length=128)
    members = models.ManyToManyField(Person, through='Membership')

class Membership(models.Model):
    person = models.ForeignKey(Person)
    group = models.ForeignKey(Group)
    date_joined = models.DateField()
    invite_reason = models.CharField(max_length=64)

# other models which are unrelated to the ones above..

class Trip(models.Model):
  placeVisited  = models.ForeignKey(Place)
  visitor  = models.ForeignKey(Person)
 pleasuretrip = models.Boolean()

class Place(models.Model):
  name = models.CharField(max_length=128)
Run Code Online (Sandbox Code Playgroud)

我想在会员表单中添加一些通过内联显示的额外字段.这些字段基本上是另一个模型(Trip)实例化的快捷方式.Trip可以拥有自己的管理员视图,但需要这些快捷方式,因为当我的项目合作伙伴在系统中输入"会员"数据时,他们碰巧也有"旅行"信息(并且还因为会员资格中的某些信息可能只是被复制到旅行等.).

因此,所有我想有在籍内嵌了两个附加字段- placeVisited和pleasuretrip -这与Person实例在一起会让我实例在后台旅行模式 ...

我发现通过定义自己的表单,我可以轻松地将额外的字段添加到内联视图中.但是一旦输入数据,如何以及何时引用它们以执行我需要执行的保存操作?

class MyForm(forms.ModelForm):
 place = forms.ModelChoiceField(required=False, queryset=Place.objects.all(), label="place",)
 pleasuretrip = forms.BooleanField(required=False, label="...")

class MembershipInline(admin.TabularInline):
 model = Membership …
Run Code Online (Sandbox Code Playgroud)

forms django inline django-admin

6
推荐指数
2
解决办法
5650
查看次数

我可以使用python的pdfminer从pdf中提取精彩片段吗?

我想尝试从pdf中提取突出显示的文本,所以我开始查看pdfminer但找不到此特定函数的任何文档.

这有可能吗?

python pdf

5
推荐指数
1
解决办法
1348
查看次数

从Sublime 2获取今天的日期

我是一个Sublime Text新手,我以前在那里使用Textmate我有一个方便的'今天'命令,它在编辑器中返回今天的日期(使用shell).

eg 'today' + TAB ==> '12/10/2012/'  
Run Code Online (Sandbox Code Playgroud)

我如何在Sublime中创建类似的东西?

shell code-snippets sublimetext2

1
推荐指数
1
解决办法
1276
查看次数