Twitter bootstrap 3 ';第'页;对象没有属性';站点id';

Twitter bootstrap 3 ';第'页;对象没有属性';站点id';,twitter-bootstrap-3,django-cms,attributeerror,linkbutton,Twitter Bootstrap 3,Django Cms,Attributeerror,Linkbutton,我正在用Django cms建立一个全新的网站,我正在使用aldryn_bootstrap3 当我创建一个链接/按钮时,我的站点似乎坏了。我得到: File "c:\newCMS\venv37\lib\site-packages\aldryn_bootstrap3\model_fields.py", line 172, in get_link_url if ref_page.site_id != getattr(cms_page, 'site_id', None): AttributeE

我正在用Django cms建立一个全新的网站,我正在使用
aldryn_bootstrap3

当我创建一个链接/按钮时,我的站点似乎坏了。我得到:

File "c:\newCMS\venv37\lib\site-packages\aldryn_bootstrap3\model_fields.py", line 172, in get_link_url
    if ref_page.site_id != getattr(cms_page, 'site_id', None):
AttributeError: 'Page' object has no attribute 'site_id'
我试图安装多站点模块(我在论坛上看到它对其他人有效…)

然后,my
seetings.py
中的配置是:

from multisite import SiteID
SITE_ID = SiteID(default=1)
环境:

Request Method: GET
Request URL: http://localhost:8000/es/?edit&language=es

Django Version: 1.11.22
Python Version: 3.7.3
Installed Applications:
...
'django.contrib.sites',
'aldryn_bootstrap3',
'multisite',
'djangocms_multisite',
'MyCMS']
模板呈现期间出错:

In template c:\newCMS\venv37\lib\site-packages\aldryn_bootstrap3\templates\aldryn_bootstrap3\plugins\button.html, error at line 2
回溯:

File "c:\newCMS\venv37\lib\site-packages\aldryn_bootstrap3\model_fields.py" in get_link_url
  172.             if ref_page.site_id != getattr(cms_page, 'site_id', None):

Exception Type: AttributeError at /es/
Exception Value: 'Page' object has no attribute 'site_id'

编辑此文件和注释行172/173/174(在您的情况下)

$c:\newCMS\venv37\lib\site packages\aldryn\u bootstrap3\model\u fields.py

#if ref_page.site_id != getattr(self.page, 'site_id', None):
    #ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    #link = '//{}{}'.format(ref_site.domain, link)
if ref_page.site_id != getattr(self.page, 'site_id', None):
    ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    link = '//{}{}'.format(ref_site.domain, link)
然后返回GUI并删除导致问题的“链接按钮”

再次打开文件“model_fields.py”并取消注释这3行。然后重新启动实例

$c:\newCMS\venv37\lib\site packages\aldryn\u bootstrap3\model\u fields.py

#if ref_page.site_id != getattr(self.page, 'site_id', None):
    #ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    #link = '//{}{}'.format(ref_site.domain, link)
if ref_page.site_id != getattr(self.page, 'site_id', None):
    ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    link = '//{}{}'.format(ref_site.domain, link)
!!这不是一个确定的解决方案,但它将允许您使您的网站再次运行

在**Debian/Ubuntu**服务器上,编辑并注释此文件

$sudo vim/usr/local/lib/python3.6/site-packages/aldryn_bootstrap3/model_fields.py

#if ref_page.site_id != getattr(self.page, 'site_id', None):
    #ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    #link = '//{}{}'.format(ref_site.domain, link)
if ref_page.site_id != getattr(self.page, 'site_id', None):
    ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    link = '//{}{}'.format(ref_site.domain, link)

-->Raphaël Jonard|Web性能加速器编辑文件:aldryn_bootstrap3/model_fields.py

#if ref_page.site_id != getattr(self.page, 'site_id', None):
    #ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    #link = '//{}{}'.format(ref_site.domain, link)
if ref_page.site_id != getattr(self.page, 'site_id', None):
    ref_site = Site.objects._get_site_by_id(ref_page.site_id)
    link = '//{}{}'.format(ref_site.domain, link)
更换第169行,其如下所示:

if ref_page.site_id != getattr(self.page, 'site_id', None):
与:


django cms的哪个版本和aldryn_bootstrap3的哪个版本?