如何在FeinCMS上安装第三方应用程序?

时间:2013-08-02 05:18:07

标签: python django feincms

所以我正在尝试安装:https://zipfelchappe.readthedocs.org/en/latest/并按照那里的步骤进行操作

我对如何从那里提取urls文件感到困惑

例如,我已经设置了models.py,如下所示:

来自django.db导入模型

from django.utils.translation import ugettext_lazy as _

from feincms.module.page.models import Page
from feincms.content.richtext.models import RichTextContent
from feincms.content.medialibrary.models import MediaFileContent
from feincms.content.application.models import ApplicationContent
from feincms.module.extensions import datepublisher
from feincms.module.extensions import translations

from zipfelchappe.models import Project


Page.register_templates({
    'title': _('Standard template'),
    'path': 'base.html',
    'regions': (
        ('main', _('Main content area')),
        ('sidebar', _('Sidebar'), 'inherited'),
        ),
    })

Page.create_content_type(RichTextContent)
Page.create_content_type(MediaFileContent, TYPE_CHOICES=(
    ('default', _('default')),
    ('lightbox', _('lightbox')),
    ))

Page.create_content_type(ApplicationContent, APPLICATIONS=(
    ('zipfelchappe.urls', _('Zipfelchappe projects')),
))


Project.register_regions(
    ('main', _('Content')),
)

Project.register_extensions(
    'zipfelchappe.extensions.categories',
    #'zipfelchappe.extensions.paypal_receivers',
)

Project.create_content_type(RichTextContent)
Project.create_content_type(MediaFileContent, TYPE_CHOICES=(
    ('default', _('default')),
    ('lightbox', _('lightbox')),
    ))

当我创建新页面时,我看到下拉列表中有Zipfelchappe projects,当我在页面中添加它并查看页面时,我什么都没看到,但其他内容类型显示...我我假设这是因为我的zipfelchappe.urls存在问题

现在我的urls.py文件是这样的:

来自django.conf.urls导入模式,include,url     来自django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    url(r'^admin/', include(admin.site.urls)),
    url(r'', include('feincms.urls')),
    url(r'^zipfelchappe/paypal/', include('zipfelchappe.paypal.urls')),
)

我正在尝试按照http://www.feinheit.ch/media/labs/feincms/integration.html中的步骤进行操作,但我不太明白他们的例子与我的相关。因为他似乎从示例第三方应用程序中提取特定模型....我不知道我要拉什么具体模型

1 个答案:

答案 0 :(得分:0)

您不应该在任何地方添加第三方应用网址,因此请从您的根网址中删除该行,而是将其附加到您的Project模型:

@app_models.permalink
def get_absolute_url(self):
    return ('project_detail', 'zipfelchappe.urls', (), {
        'slug': self.slug,
    })

或者您的详细信息视图可以反转的任何名称(请参阅您的zipfelchappe网址模块)

这将使视图可用于feincms系统,就像当前页面是应用程序的根目录一样。如果这不是您打算做的,那么您根本不应该在cms页面结构中集成应用程序。

然而,如文档中所述,您可以使用PagePretender在您的feincms导航中“注入”网址。