1

I have been trying to load/install plugins via the python console in QGIS. After going through the documentation, I'm sure this is the way. I want to check if a plug-in is already installed, if not install it.

The lines:

from qgis import utils

try:
    utils.isPluginLoaded('zoomtocoordinates')
except ValueError:
    qgis.core.QgisInterface.addPluginToMenu('zoomtocoordinates')

The error returned:

Traceback (most recent call last):
  File "<input>", line 1, in <module>
AttributeError: 'module' object has no attribute 'QgisInterface'
  • 1
    addPluginToMenu will not load the plugin, it is usually used by the initgui method of a plugin. – Zoltan Sep 13 '15 at 8:13
0

QgisInterface is an abstract base class you cannot use this way. Call the addPluginToMenu method through the iface e.g. iface.addPluginToMenu(...) The addPluginToMenu has two arguments, the second one is an action.

  • What would be the action ? like trigger() – Sam Guerrero Sep 14 '15 at 6:11
  • An action is a QAction object with icon, text and call back function. But again addPluginToMenu will not load the plugin. – Zoltan Sep 15 '15 at 11:16
0

You have to load and start the plugin. From the QGIS python console, you can do:

from qgis import utils

utils.loadPlugin('zoomtocoordinates')
utils.startPlugin('zoomtocoordinates')

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.