But you should be registering the Panel like
settings.register(EC2ListPanel)
or settings.register(ec2list.EC2ListPanel)
not ec2list
-Dave
-Original Message-
From: Wyllys Ingersoll [mailto:wyllys.ingers...@evault.com]
Sent: Wednesday, March 20, 2013 11:04 AM
To: Lyle, David (Cloud Services)
Cc: openstack@lists.launchpad.net
Subject: Re: register a new panel in overrides.py
Thats not working for me.
My module is installed in
/usr/lib/python2.7/dist-packages/horizon/dashboards/settings as 'ec2list', it
is in the python path so thats not the issue.
overrides.py looks like this:
import horizon
import logging
settings= horizon.get_dashboard('settings')
LOG = logging.getLogger(__name__)
import ec2list
try:
settings.register(ec2list)
except Exception as exc:
LOG.debug("Error registering ec2list panel: %s" % exc)
-
I've also tried using ec2list.__class__, but then I get the following error:
"Error registering ec2list panel: Only Panel classes or subclasses may be
registered."
However, my ec2list Panel is a valid panel, as is evident by the fact that when
I put it directly into the settings/dashboard.py file list of panels, it works
just fine. Here is the panel.py file:
--
from django.utils.translation import ugettext_lazy as _
import horizon
from horizon.dashboards.settings import dashboard
class EC2ListPanel(horizon.Panel):
name = _("EC2 List Credentials")
slug = 'ec2list'
dashboard.Settings.register(EC2ListPanel)
-
On Mar 20, 2013, at 12:34 PM, "Lyle, David (Cloud Services)"
wrote:
> There's a couple of changes that you need to make...
>
> First, edit the overrides.py file: (e.g., if we wanted to add the panel to
> the admin dashboard so this uses the admin dashboard slug: 'admin')
>
> import horizon
> from path_to_module.panel import YourNewPanelClass
>
> admin_dashboard = horizon.get_dashboard("admin")
> admin_dashboard.register(YourNewPanelClass)
>
>
> Next, make sure your overrides.py file is being called in your settings.py
>
> HORIZON_CONFIG = {
> dashboards = ('project', 'admin','settings'),
> ...,
> 'customization_module': 'your_base_module.overrides'
> }
>
> -Dave
>
> -Original Message-
> From: openstack-bounces+david.lyle=hp@lists.launchpad.net
> [mailto:openstack-bounces+david.lyle=hp@lists.launchpad.net] On Behalf Of
> Wyllys Ingersoll
> Sent: Wednesday, March 20, 2013 9:50 AM
> To: openstack@lists.launchpad.net
> Subject: [Openstack] register a new panel in overrides.py
>
>
> Can someone give a pointer to how one goes about adding a new panel to an
> existing panel using overrides.py ?
>
> I know my panel is working because if I hardcode it into an existing
> dashboard.py file, it is found and displayed. I'd prefer to put it in
> overrides.py instead and am wondering how that would be coded.
>
> thanks,
> Wyllys
>
>
> ___
> Mailing list: https://launchpad.net/~openstack
> Post to : openstack@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help : https://help.launchpad.net/ListHelp
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp