aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/pluginwriter/api.rst
diff options
context:
space:
mode:
authorAditi <aditi.iitr@gmail.com>2013-06-26 22:13:23 +0530
committerAditi <aditi.iitr@gmail.com>2013-06-26 22:13:23 +0530
commit054ef9a76a2ca73c0ca3cb8325a01cc981a39ddd (patch)
treeb8890b62d50cfc20a7d9af7d86d6ceb0a29eb5fd /docs/source/pluginwriter/api.rst
parent2719d546a57c2332e36cc056ac80ec5d79672c1a (diff)
parent491f2007f5d1f5f595c37491b7f9c0c2b4c93963 (diff)
downloadmediagoblin-054ef9a76a2ca73c0ca3cb8325a01cc981a39ddd.tar.lz
mediagoblin-054ef9a76a2ca73c0ca3cb8325a01cc981a39ddd.tar.xz
mediagoblin-054ef9a76a2ca73c0ca3cb8325a01cc981a39ddd.zip
Merge branch 'master' of git://gitorious.org/mediagoblin/mediagoblin
Diffstat (limited to 'docs/source/pluginwriter/api.rst')
-rw-r--r--docs/source/pluginwriter/api.rst26
1 files changed, 26 insertions, 0 deletions
diff --git a/docs/source/pluginwriter/api.rst b/docs/source/pluginwriter/api.rst
index 66def173..29adb691 100644
--- a/docs/source/pluginwriter/api.rst
+++ b/docs/source/pluginwriter/api.rst
@@ -69,6 +69,32 @@ example might look like::
This means that when people enable your plugin in their config you'll
be able to provide defaults as well as type validation.
+You can access this via the app_config variables in mg_globals, or you
+can use a shortcut to get your plugin's config section::
+
+ >>> from mediagoblin.tools import pluginapi
+ # Replace with the path to your plugin.
+ # (If an external package, it won't be part of mediagoblin.plugins)
+ >>> floobie_config = pluginapi.get_config('mediagoblin.plugins.floobifier')
+ >>> floobie_dir = floobie_config['floobie_dir']
+ # This is the same as the above
+ >>> from mediagoblin import mg_globals
+ >>> config = mg_globals.global_config['plugins']['mediagoblin.plugins.floobifier']
+ >>> floobie_dir = floobie_config['floobie_dir']
+
+A tip: you have access to the `%(here)s` variable in your config,
+which is the directory that the user's mediagoblin config is running
+out of. So for example, your plugin may need a "floobie" directory to
+store floobs in. You could give them a reasonable default that makes
+use of the default `user_dev` location, but allow users to override
+it, like so::
+
+ [plugin_spec]
+ floobie_dir = string(default="%(here)s/user_dev/floobs/")
+
+Note, this is relative to the user's mediagoblin config directory,
+*not* your plugin directory!
+
Context Hooks
-------------