将对象定位到页面上任何位置的应用程序。

django-kamasutra的Python项目详细描述


BUILD

版本0.2.2中所做的向后不兼容更改

combine_string现在用于在使用 PositionContent.renderrender_content模板标记。

之前:

/位置/我的位置/<;应用程序>;模型>;.html

新的:

/位置/我的位置/<;app>;<;组合字符串>;<;model>;.html

安装

使用pip:

pip install django-kamasutra

或者下载应用程序here

python setup.py install

位置添加到您的设置已安装的应用

INSTALLED_APPS = (
    ...
    'positions',
    ...
)

positions添加到您的url:

import positions.urls

urlpatterns += patterns('',
    url(r'^positions/', include(positions.urls)),
)

运行syncdb:

>>> ./manage.py syncdb

开始

创建您的第一个职位

创建位置所需的最小参数是一个名称,它是一个段塞字段

from positions.models import Position

position = Position.objects.create(name="MyPosition")

在你的位置添加一些内容

position manager有一个add_object方法,它至少接受两个参数,positionobj

  • position应该是位置。position实例
  • obj可以是任何模型实例
from myapp.models import MyApp

obj = MyApp.objects.get_latest()

Position.objects.add_object(position=position, obj=obj)

注意

位置模型可以定义可以添加的对象类型。 因此,在向位置添加对象时,请确保内容类型 由位置实例允许。

检索职位内容

Position Manager有一个获取内容的方法,该方法至少接受一个参数,即Position。

  • position应该是位置。position实例
position = Position.objects.get(name="MyPosition")

content = Position.objects.get_content(position=position)

通过templateTag检索职位内容

{% get_position_content position as content %}

获取位置内容需要[position][as][varname]

  • position可以是positions.position实例或position的名称
Position {{ position }} has the following content:<br/>
<ul>
{% for obj in content %}
    <li>{{ obj }}</li>
{% endfor %}
</ul>

注意

默认情况下,将返回对象实例,但也可以返回positions.positioncontent实例,该实例保存位置和对象之间的通用关系

{% get_position_content position as content as_content_type=False %}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaBridge errno=10054被Remotehost关闭   javafx如何在每次调用方法中的变量时更新它?(爪哇)   java mod_群集在发现后未平衡负载   Java软件编辑器/语法高亮   java为什么不能强制转换数组的结果。asList()到ArrayList?   java HIBERNATE:无法使用HIBERNATE从MySQL中提取数据   java在Google地图片段上添加布局   java在AbstractTableModel中执行setValueAt之前,我如何做一些事情?   java在整个Tomcat运行时保存变量   java如何在Thymeleaf模板中获取环境变量的值?   java Selenium Chrome驱动程序针对属性的标签   java正则表达式捕获未知数量的重复组