标签: django-grappelli

Sorl缩略图在AdminImageMixin中没有显示拇指

我使用django-grappeli和sorl-thumbnail在Django 1.3上遇到了麻烦.我有一个项目使用官方sorl-thumbnails文档中的代码:

# myapp/admin.py
from django.contrib import admin
from myapp.models import MyModel
from sorl.thumbnail.admin import AdminImageMixin

class MyModelAdmin(AdminImageMixin, admin.ModelAdmin):
    pass
Run Code Online (Sandbox Code Playgroud)

这个项目适用于调试服务器,并且管理员的更改形式中会出现一个漂亮的小缩略图.

但是,在另一个项目中,我通过WSGI服务我的项目,我有3个独立的域:

www.example.com 
media.example.com (that's serving user uploaded files) 
static.example.com (that's serving static files)
Run Code Online (Sandbox Code Playgroud)

但是,在此项目中,AdminImageMixin工作正常,但模型的changeform中没有可用的缩略图:

  • 它将图片上传到正确的位置
  • 它将正确的文本放在数据库字段中(uploads/+ picture_name.jpg)(我用phpmyadmin验证了这一点)
  • 除了浏览按钮之外,它不会在表单中显示任何缩略图(就像我以前一样)

以下是一些示例代码:

# models.py
class Category(models.Model):
    name = models.CharField(max_length=200, verbose_name='name', help_text='Name of category')
    description = models.TextField(verbose_name='Description', help_text='You can use Textile')
    icon = ImageField(upload_to='uploads/', blank=True, null=True)

# admin.py
class CategoryAdmin(AdminImageMixin, admin.ModelAdmin):
    pass
admin.site.register(Category, CategoryAdmin)

# settings.py

INSTALLED_APPS = ( …
Run Code Online (Sandbox Code Playgroud)

django sorl-thumbnail django-grappelli

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

嵌入式媒体没有出现在TinyMCE的html编辑器中

它不会保存.

  • 我使用媒体插件从youtube插入视频.
  • 电影出现在预览中.
  • 我按插入.
  • 这是ed.execCommand('mceInsertContent', false, h);media.js中的输出:<img src="http://127.0.0.1:8000/media/admin/tinymce/jscripts/tiny_mce/plugins/media/img/trans.gif" class="mceItemFlash" title="src:'http://www.youtube.com/v/b7wJejHIFEc&feature',width:'376',height:'302'" width="376" height="302" align="" />当我按下插入/提交时.
  • 我在编辑器中看到一个黄色框.
  • 我检查源html,我看到的是<p>&nbsp;</p>移动嵌入的东西应该是什么.
  • 我保存,黄色的盒子不见了.

这是我目前的tinymce初始化脚本:

tinyMCE.init({

    // General
    mode:               'none',
    theme:              'advanced',
    skin:               'grappelli',
    dialog_type:        'window',
    browsers:           'gecko,msie,safari,opera',
    editor_deselector : 'mceNoEditor',
    language:           "en",
    relative_urls:      false,
    plugins:            'advimage,advlink,fullscreen,paste,searchreplace,grappelli,grappelli_contextmenu,media',

    // callbackss
    file_browser_callback: 'CustomFileBrowser',

    // Layout
    width:              410,
    height:             500,
    indentation:        '10px',
    object_resizing:    false,

    // Accessibility
    cleanup_on_startup:     true,
    accessibility_warnings: false,
    remove_trailing_nbsp:   true,
    fix_list_elements :     true,
    remove_script_host:     true,

    // theme_advanced
    theme_advanced_toolbar_location: "top",
    theme_advanced_toolbar_align: "left",
    theme_advanced_statusbar_location: …
Run Code Online (Sandbox Code Playgroud)

javascript django tinymce django-grappelli django-tinymce

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

未定义Django NameError [app name]

尝试使用django-grappelli作为我的管理主题,安装具有惊人的挑战性.在我的urls.py中运行以下内容:

NameError .. name 'grappelli' is not defined
Run Code Online (Sandbox Code Playgroud)

该错误被抛出

(r'^grappelli/', include(grappelli.urls))
Run Code Online (Sandbox Code Playgroud)

用pip安装grappelli,grappelli在我的sites-packages目录中.添加到我的INSTALLED_APPS,运行syncdb,尝试将grappelli添加到我的pythonpath,但没有运气.如果我在urls.py中导入grappelli,则错误会更改为AttributeError - 'module' has no attribute 'urls'

建议或任何形式的帮助非常感谢.

python django django-grappelli

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

django管理工具和grappelli在一起

是否可以将django grappeli和django管理工具菜单一起运行?

我已经安装了两个,但只能看到grappeli或管理工具(取决于INSTALLED_APPS中的顺序).

我发现老源说django管理工具和grappelli一起工作http://code.google.com/p/django-grappelli-admin-tools/,但是给出的文档没有帮助.

django-grappelli django-admin-tools

6
推荐指数
0
解决办法
1285
查看次数

Django grappelli似乎无法看到它的所有媒体文件

我在Ubuntu服务器上运行django 1.4和grappelli 2.4.3,我在生产时通过Windows网络系统查看.当我使用RDP在Ubuntu机器上查看它时,在开发服务器上一切正常.

settings.py的相关部分是:

STATIC_ROOT = os.path.join(os.path.dirname(__file__), '../03_static_files/collected/')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    os.path.join(os.path.dirname(__file__), '../03_static_files/'),
    os.path.join(os.path.dirname(__file__), '../03_static_files/admin/'),
    os.path.join(os.path.dirname(__file__), '../03_static_files/filebrowser/'),
    os.path.join(os.path.dirname(__file__), '../03_static_files/grappelli/'),
)
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
#    'django.contrib.staticfiles.finders.DefaultStorageFinder',
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # apps I added but didn't create
    'south',
    'grappelli',
    'filebrowser',
    'tinymce',
    'haystack',
    'gunicorn',
    'debug_toolbar', …
Run Code Online (Sandbox Code Playgroud)

django nginx django-grappelli gunicorn

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

如何让grappelli自动完成小部件代替ModelMultipleChoiceField(在一对多方向上)?

使用Django Grappelli管理工具,我可以配置一个ForeignKey(多对一)字段显示为自动完成小部件,而不是下拉字段,如下所示:

class MyModel(models.Model):
    related = models.ForeignKey(RelatedModel, related_name='my_models')

class MyModelAdmin(admin.ModelAdmin):
    raw_id_fields = ('related',)
    autocomplete_lookup_fields = {
        'fk': ['related'],
    }
Run Code Online (Sandbox Code Playgroud)

不过,我想要做的就是在定义自动完成构件查找其他(一到多)方向(即在管理的RelatedModel,所以我可以查找一个或多个为MyModel对象).现在,我只是使用ModelMultipleChoiceField:

class RelatedModelForm(forms.ModelForm):
    class Meta:
        model = RelatedModel
        fields = ('my_models',)
    my_models = forms.ModelMultipleChoiceField(queryset=MyModel.objects.all())

    def __init__(self, *args, **kwargs):
        super(SaleAdminForm, self).__init__(*args, **kwargs)
        if self.instance:
            self.fields['foods'].initial = self.instance.foods.all()

    def save(self, *args, **kwargs):
        instance = super(RelatedModelForm, self).save(commit=False)
        self.fields['my_models'].initial.update(related=None)
        self.cleaned_data['my_models'].update(related=instance)
        return instance

class RelatedModelAdmin(admin.ModelAdmin):
    model = RelatedModel
    form = RelatedModelForm
Run Code Online (Sandbox Code Playgroud)

但是,有太多的MyModel实例可以很好地处理这种类型的小部件.为MyModel对象提供一个或多个自动完成查找小部件代替ModelMultipleChoiceField是理想的.

Grappelli有一种简单的方法可以为FK关系和m2m关系进行自动完成查找,但是有没有办法实现一对多的关系?看起来像那些自动填充物和其他两种类型的关系一样有用,所以我猜想Grappelli也会提供一种简单的方法,但我找不到它......

django autocomplete one-to-many django-admin django-grappelli

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

Django Admin date_hierarchy 中的 NonExistentTimeError

我刚刚在 Django Admin 中遇到错误。这是本地重现的日志:

NonExistentTimeError at /admin/{blah}/
2015-10-18 00:00:00
Request Method: GET Request
URL:    http://127.0.0.1:8000/admin/{blah}/?q=someuser%40hotmail.com
Django Version: 1.7.10
Exception Type: NonExistentTimeError
Exception Value:     2015-10-18 00:00:00 Exception
Location:   C:\Python27\lib\site-packages\pytz\tzinfo.py in localize,
line 327 Python Executable: C:\Python27\python.exe Python
Version:    2.7.10
Run Code Online (Sandbox Code Playgroud)

我发现它确实2015-10-18 00:00:00不存在于我的时区(“美国/圣保罗”)中,因为那是夏令时开始的时间。

我正在使用date_hierarchy = 'date_lastupdated',当我在管理员中搜索用户someuser@hotmail.comDjango 时,仅返回一条记录,而该用户的记录date_lastupdated'2015-10-18 05:10:18.593336-03'.

错误发生在模板~~~~/Python27/lib/site-packages/grappelli/templates/admin/change_list.html第 212 行:

<!-- DATE HIERARCHY -->
    {% block date_hierarchy %}
        {% if cl.date_hierarchy %}{% date_hierarchy cl %}{% endif %}
    {% …
Run Code Online (Sandbox Code Playgroud)

python django django-admin django-grappelli django-timezone

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

Django Grappelli错误

我和Django Grappelli有问题.它似乎正在加载CSS就好了,但样式似乎......关闭.也许一些照片会澄清我的意思:

http://imgur.com/eRlaX

http://imgur.com/T11Xt

django django-grappelli

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

Django自定义管理仪表板错误

我试图使用django-grappelli仪表板,管理界面给出了错误.

Django Version: 1.4.1
Exception Type: ImportError
Exception Value:    
No module named dashboard

In template /.../lib/python2.7/site-packages/grappelli/dashboard/templates/admin/index.html, error at line 32
31  {% block content %}
32  {% grp_render_dashboard %}
33  {% endblock %}
Run Code Online (Sandbox Code Playgroud)

我可以在更改之前使用grappelli管理界面.采取的步骤是根据手册.我将这些添加到我的settings.py中

    GRAPPELLI_INDEX_DASHBOARD = 'myproj.dashboard.CustomIndexDashboard'
    ...
TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.request",
    "django.core.context_processors.i18n",
    'django.contrib.messages.context_processors.messages',
)

    INSTALLED_APPS = (
        'grappelli.dashboard',
        'grappelli',
        'django.contrib.admin',
         ...
Run Code Online (Sandbox Code Playgroud)

dashboard.py位于根目录(myproj)中.它里面有一堂课.

 class CustomIndexDashboard(Dashboard):

myproj
??? admin
?   ??? css
:
??? dashboard.py
??? grappelli
?   ??? images
?   ?   ??? backgrounds
??? myapp
?   ??? …
Run Code Online (Sandbox Code Playgroud)

python django django-grappelli

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

django-grappelli没有工作

我无法让django-grappelli工作.以下是我的所作所为 -

  1. 安装使用pip install django-grappelli.
  2. grappelli在' ' 之前在INSTALLED_APPS中添加了' django.contrib.admin'.
  3. 在urls.py中,url(r'^grappelli/', include('grappelli.urls'))在admin url之前添加了URL定义,即.url(r'^admin/', include(admin.site.urls))
  4. 执行syncdbcollectstatic命令.

现在,当我运行命令runserver,并浏览localhost:8000/admin /时,令人惊讶的是我得到了默认的admin.

我在Google Chrome网络标签中检查了请求流量(在开发者工具中),我没有看到任何以Grappelli开头的网址请求.

我不知道我做错了什么.我在Windows 7机器上的virtualenv中使用Django 1.4.1-final.

python django django-grappelli

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