标签: django-cms

Django 单元测试 Sekizai 和 django cms

如何在 django 中编写测试?我阅读了文档:https://docs.djangoproject.com/en/dev/topics/testing/overview/

但是我们使用 django-cms 和 sekizai 所以当我做一个简单的测试时,例如:

from django.test import TestCase
from django.test.client import Client

class AccessTest(TestCase):
    def setUp(self):
        # Every test needs a client.
        self.client = Client()

    def test_details(self):
        # Issue a GET request.
        response = self.client.get('/')

        # Check that the response is 200 OK.
        self.assertEqual(response.status_code, 200)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Traceback (most recent call last):   File "/home/maazza/PycharmProjects/django_my_app/search_engine/tests.py", line 18, in test_details
    response = self.client.get('/')   File "/home/maazza/.virtualenvs/django_my_app/local/lib/python2.7/site-packages/django/test/client.py", line 439, in get
    response = super(Client, self).get(path, data=data, **extra)   File "/home/maazza/.virtualenvs/django_my_app/local/lib/python2.7/site-packages/django/test/client.py", line …
Run Code Online (Sandbox Code Playgroud)

python django unit-testing django-cms django-sekizai

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

django-cms:当前页面可用的属性和方法

我已经学习了Django-CMS一段时间了。我试图将我的一个应用程序挂接到 cms 页面,同时仍然使用分配给它的模板。我开始知道可以从request.current_page对象中检索当前模板。我进行了很多搜索,current_page但找不到任何合适的文件。

current_page我想知道..中定义了哪些其他属性和方法

获取当前页面上的所有信息(标题、菜单、模板、插件、附加应用程序等)的最佳方式是什么?

django django-cms current-page

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

Django CMS 插件上下文与页面上下文

我有一个新闻页面,在 中news.detailpage,我在一个小列中还有另外 4 个项目(新闻、视频等),作为名为 的模型的 cms_plugin CrossItems

在此输入图像描述

问题是,cms_plugin 的上下文可以包含 中所示的新闻news.detailpage

我担心的是,我无法从 cms_plugins 上下文访问页面上下文,否则我可以轻松过滤掉新闻。

有没有什么方法可以实现这一点,以便这 4 个项目不包含左侧显示的实际新闻?

django django-cms

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

删除特定字段中具有重复值的Django QuerySet对象

我有这个Django模型(来自Django CMS):

class Placeholder(models.Model):
    slot = models.CharField(_("slot"), max_length=50, db_index=True)
    default_width = models.PositiveSmallIntegerField(_("width"), null=True)
Run Code Online (Sandbox Code Playgroud)

我想删除带有重复'slot'值的Placeholder对象,只保留每个对象的第一个并删除其他对象.

如何编写执行此操作的查询(使用Django QuerySet API)?

django django-queryset django-cms django-shell

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

我可以使用两个名称不同的urls.py吗?

在Django中,是否有可能有两个不同的url模式文件,这两个文件都没有被调用urls.py?或者Django是否依赖于每个Django app只有一组url模式,并且必须调用它urls.py

我正在使用Django CMS,我希望将应用程序拆分为两个apphooks和两个菜单.所以,我已经试过分裂urls.pypub_urls.pytrain_urls.py,但我似乎通过这样做,有破事,尽管cms_app.py命名正确的URL -例如:

from cms.app_base import CMSApp
from cms.apphook_pool import apphook_pool
from django.utils.translation import ugettext_lazy as _
from resources.menu import TrainingMenu, PublicationMenu

class PublicationApp(CMSApp):
    name = _("Publication App") # give your app a name, this is required
    urls = ["resources.pub_urls"] # link your app to url configuration(s)
    menus = [PublicationMenu]

class TrainingApp(CMSApp):
    name = _("Training App") # give your app a name, this is required
    urls …
Run Code Online (Sandbox Code Playgroud)

django django-urls django-cms

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

Django-CMS:同一项目中的多个域

我正试图在两个不同的域上运行django-cms.为此,我创建了两个域(django.contrib.sites)并添加了django-cms页面.现在我创建了一个SiteDetectionMiddleware:

class SiteDetectionMiddleware:
  def process_request(self, request):
    settings.SITE_ID = 1
    host = request.META.get('HTTP_HOST')
    if host:
      try:
        site = Site.objects.get(domain=host)
        settings.SITE_ID = site.id
      except Site.DoesNotExist:
        pass
Run Code Online (Sandbox Code Playgroud)

它似乎工作正常,当我重新启动apache后第一次在浏览器中调用网站时.然后我改为其他网站并得到NoReverseMatch错误.

有谁知道什么可能是错的?

我认为这应该在django-cms开箱即用?

科林

python django django-cms python-2.7

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

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

django app:无法指定"''":"ImageText.link"必须是"链接"实例

我正在为我的Django 1.5.1和Django-cms安装构建一个应用程序.该应用程序旨在允许上传链接到URL的图像.我的代码:

cms_plugins.py

from cms.plugin_base import CMSPluginBase
from cms.plugin_pool import plugin_pool
from cms.plugins.text.widgets.wymeditor_widget import WYMEditor
from django.forms.fields import CharField
from models import ImageText

class ImageTextPlugin(CMSPluginBase):
    model = ImageText
    name = "video wall"
    render_template = "video.html"

def render(self, context, instance, placeholder):
    context.update({
        'object':instance,
    })
    return context


  plugin_pool.register_plugin(ImageTextPlugin)
Run Code Online (Sandbox Code Playgroud)

models.py

 from django.db import models
 from django.db.models import fields 
 from filer.fields.image import FilerImageField
 from filer.fields.file import FilerFileField
 from cms.models import CMSPlugin


 class ImageText(CMSPlugin):
      image = FilerImageField(related_name="image0")
      link = models.CharField(max_length=255, blank=True)
Run Code Online (Sandbox Code Playgroud)

admin.py

 from django.contrib import …
Run Code Online (Sandbox Code Playgroud)

python django django-models django-cms django-1.5

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

Pillow不支持JPEG支持 - 安装Django Cms

我正在尝试让Django Cms在我的系统上工作.遵循Django-CMS教程:https://github.com/divio/django-cms-tutorial

我不得不安装枕头,但现在我跑的时候:

$ djangocms -p . my_demo
Run Code Online (Sandbox Code Playgroud)

并填写所有选项我收到以下错误:

HTTP error 404 while getting https://github.com/divio/django-cms/archive/3.0c2.zip
Exception:
Traceback (most recent call last):
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-    packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-    packages/pip/commands/install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-packages/pip/req.py", line 1197, in prepare_files
do_download,
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-packages/pip/req.py", line 1375, in unpack_url
self.session,
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-packages/pip/download.py", line 547, in unpack_http_url
resp.raise_for_status()
  File "/Users/macbook/Desktop/MyProjects/djangoCMS/demo/demoEnv/lib/python2.7/site-packages/pip/_vendor/requests/models.py", line 773, in raise_for_status
raise HTTPError(http_error_msg, response=self)
HTTPError: 404 Client Error: Not …
Run Code Online (Sandbox Code Playgroud)

macos libjpeg django-cms pillow

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

在管理员Django CMS中更改域的名称

总是我在django-CMS中创建一个新项目,当我去管理员的时候我看到

在此处输入图片说明

可以更改example.com其他名称吗?怎么做?

提前致谢

python django django-cms

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