我开始使用django CMS项目.它很棒,采用模块化设计而构建......但实际上我们的客户想要的是更简单:
在这里,在django CMS中,每个页面都可以包含许多内容"插件" - 无论是文本,图像还是其他.但是客户想要为每个新页面自动激活,选择和创建文本插件 - 并在该文本字段上工作.这对他们来说更简单.
有没有人在使用这个CMS系统之前做过类似的事情?或者,您可以推荐任何其他简单的django CMS解决方案?
我有一个django网站,运行django-cms非常愉快,但现在我想用jQuery包含一些我自己喜欢的javascript.我对django很新,所以我的问题可能源于此.
Django-cms本身就使用了jQuery,所以如果我将jquery添加到标题中 - 事情会毫不奇怪地破坏rathter.如何在不影响django-cms的情况下添加自己的jQuery?
目前我的javascript文件存储在我在项目settings.py中定义的媒体根目录中,如上所述,我在标题中引用它们.
在我读到这篇文章时,这似乎是一个愚蠢的问题,但我仍然感到困惑.
编辑::一些代码
我有一个媒体根定义:
MEDIA_ROOT = os.path.join(PROJECT_PATH, 'media')
Run Code Online (Sandbox Code Playgroud)
在我的基本模板中,标题包括
<script src="/media/javascript/jquery.js" type="text/javascript"></script>
<script src="/media/javascript/application.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)
application.js中的Javascript可以工作,但是当django-cms的东西启动它就会中断.例如,尝试将插件添加到占位符会导致:
Uncaught TypeError: Property 'type' of object function ( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context );
} is not a function
Run Code Online (Sandbox Code Playgroud)
我以为这是因为两个jQuerys相互冲突
::另一个编辑::我应该补充一点,我正在使用django来托管静态文件,因为它仍在开发中......
我在django cms的单个实例中设置了多个站点,并使用haystack进行搜索(使用Solr).但是,我得到的search_indexes.py似乎没有任何效果.就像它被忽略了一样,使用了一个默认的.为什么我的search_indexes.py没有生效?
我有以下内容:
settings.py:
HAYSTACK_SITECONF = 'mysite.search_sites'
Run Code Online (Sandbox Code Playgroud)
search_sites.py:
from cms.models import monkeypatch_reverse
import haystack
monkeypatch_reverse()
haystack.autodiscover()
Run Code Online (Sandbox Code Playgroud)
mysite的/应用/ search_indexes.py:
from django.conf import settings
from django.utils.translation import string_concat, ugettext_lazy
from django.utils.html import strip_tags
from haystack import indexes, site
from cms.models.managers import PageManager
from cms.models.pagemodel import Page
from cms.models.pluginmodel import CMSPlugin
def page_index_factory(lang, lang_name):
if isinstance(lang_name, basestring):
lang_name = ugettext_lazy(lang_name)
def get_absolute_url(self):
if 'cms.middleware.multilingual.MultilingualURLMiddleware' in settings.MIDDLEWARE_CLASSES:
return '/%s%s' % (lang, Page.get_absolute_url(self))
else:
return Page.get_absolute_url(self)
class Meta:
proxy = True
app_label = 'cms'
if …Run Code Online (Sandbox Code Playgroud) 我需要为几个相当大的网站选择和定制Ruby CMS(最好基于Ruby On Rails).我知道Radiant CMS,Refinery CMS并且Locomotive是rails中最着名的CMS,但它们都不包括我需要的所有功能.以下是这些CMS中(有时)缺少的主要非平凡功能:
RQ:这个模板/占位符功能部分存在于DjangoCMS中
插件的概念存在于例如DjangoCMS中
你会选择什么?为什么?
我应该从头开始重建自定义解决方案吗?
有没有人实现的这些功能之一(Radiant CMS,Refinery CMS,或Locomotive为实例)?
感谢您对此的任何帮助或建议!
我还是相对较新的Django并且刚开始在Django-CMS上闲逛,但是,我无法通过官方文档的基本介绍.
我的问题可能与sekizai有关,但感觉它是urls.py中的基本网址问题.
基本上,我几乎完全按照教程.唯一的区别是我有我的cms应用程序在blog /,完整路径〜/ workspace/djangocms/blog /.我已经设置了STATIC_URL和STATIC_ROOT正常下settings.py和我一样去MEDIA_URL和MEDIA_ROOT.
我调出了媒体路径和目录,因为如果我将我的基本模板设置为链接到css {{ MEDIA_URL }}css/somecss.min.css就可以了.但是,对STATIC_URL执行相同操作:{{ STATIC_URL }}css/somecss.min.css不起作用并生成404.
另外,据我所知,默认/静态/路由似乎适用于其他目录.通过{% cms_toolbar %}从/static/cms/css/plugins/cms.toolbar.css这样的地方生成fine和css生成的代码正在正常提供.
urls.py的内容
from django.conf.urls.defaults import *
from django.contrib import admin
from django.conf import settings
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'blog.views.home', name='home'),
# url(r'^blog/', include('blog.foo.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
# url(r'^admin/', …Run Code Online (Sandbox Code Playgroud) 我有一个Django CMS项目,需要创建一个非CMS应用程序"Achievemnets".客户希望完全控制页面设计,这意味着页面应该是CMS页面.但是我已经创建了特定的视图来显示页面中的所有achievemtns并单击更多链接,它将详细显示.我需要将它移植到Django CMS我根据Django CMS文档中的CMS App Hook方法尝试过.但它们都不起作用.
请告诉我一个有助于学习CMS App Hooking的教程
我有一个关于django cms 2.3.3的本地安装的问题:我已经通过pip安装它,在一个单独的virtualenv中.接下来我按照settings.py配置教程,启动了服务器.然后在管理员我创建了一个页面(主页),我试图通过cmsplugin_filer_image在占位符中添加一个图像,但上传似乎不起作用.这是我的settings.py:
# Django settings for cms1 project.
# -*- coding: utf-8 -*-
import os
gettext = lambda s: s
PROJECT_PATH = os.path.abspath(os.path.dirname(__file__))
DEBUG = True
TEMPLATE_DEBUG = DEBUG
ADMINS = (
# ('Your Name', 'your_email@example.com'),
)
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'cms1', # Or path to database file if using sqlite3.
'USER': 'cms', # Not used with sqlite3.
'PASSWORD': 'cms', # Not used with sqlite3. …Run Code Online (Sandbox Code Playgroud) 有没有办法在我的基本模板中创建全局占位符?我需要在每个页面上都相同(横幅列表).我怎样才能做到这一点?
Django == 1.5.1 django-cms == 2.4.1
我想在django-cms中从所选页面的所有子页面中创建类似摘要视图的内容,为每个列出的子项提取更多...链接的标题,截断内容等.我已经成功获得了标题和路径,但我很难从占位符获取内容.
我有这样的模板标签:
from cms.models import Page
from cms.utils.page_resolver import get_page_from_path
from django import template
register = template.Library()
@register.inclusion_tag('news_summary_item.html')
def get_news_items():
news_root = get_page_from_path('news')
newsitems = news_root.children.filter(published=True)
return {'newsitems':newsitems}
Run Code Online (Sandbox Code Playgroud)
这是它使用的模板:
{% load cms_tags menu_tags %}
<ul>
{% for item in newsitems %}
<li><a href="/{{ item.get_path }}">{{ item.get_title }}</a>
{% for placeholder in item.placeholders.all %}
# {% show_placeholder placeholder.slot item current_language %} #
{% endfor %}
</li>
{% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助获取占位符内容吗?理想情况下,id喜欢能够通过truncatewords_html传递它来获得摘要,但是可以通过其他方式获得相同的效果.
感谢您的任何提示/指示!
我正在尝试将自定义用户模型与Django CMS结合使用。我使用以下模型创建了新的用户应用程序:
users.models:
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
bio = models.TextField(max_length=500, blank=True)
location = models.CharField(max_length=30, blank=True)
birth_date = models.DateField(null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)
这里是项目设置:
设置:
INSTALLED_APPS = [
'djangocms_admin_style',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.admin',
'django.contrib.sites',
'django.contrib.sitemaps',
'django.contrib.staticfiles',
'django.contrib.messages',
'users',
'cms',
'menus',
...
]
AUTH_USER_MODEL = 'users.User'
Run Code Online (Sandbox Code Playgroud)
为什么我有这个错误?
manage.py makemigrations用户
django.db.migrations.state.InvalidBasesError: Cannot resolve bases for [<ModelState: 'cms.PageUser'>]
This can happen if you are inheriting models from an app with migrations (e.g. contrib.auth)
in an app with no migrations; …Run Code Online (Sandbox Code Playgroud) django-cms ×10
django ×8
python ×2
django-admin ×1
django-urls ×1
django-views ×1
jquery ×1
placeholder ×1
search ×1