Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Made a fix to this one too (but read note** below). Suppose you want to have custom skins placed in directory:

/home/graeme/forum_skins

Add setting to your settings.py:

ASKBOT_EXTRA_SKIN_DIRS = ('/home/graeme/forum_skins',) #a tuple add trailing comma

Note that the usual TEMPLATE_DIRS setting is not used by askbot.

Make one and have the following structure:

/home/graeme/forum_skins/
                     somename/
                            templates/
                            media/

Skin names must be unique and should not clash with the "canned" ones. At this point names "default" and "common" are taken.

Then you'll be able to set the skin from settings, however you have to restart the application to apply changes. Hopefully we'll figure out how to force jinja recompile templates on the go some time in the future.

The django's TEMPLATE_DIRS approach does not work with askbot because of how skinning system is set up. The few reasons for not using TEMPLATE_DIRS are: skins come with media as well as templates, they have name. So there is a specific expectation of the directory structure and I've decided to bypass the TEMPLATE_DIRS entirely. Maybe it's not the best way to go, drop a note if you have an idea...

Note(**)

Unfortunately at this point you are on your own in keeping your custom templates in sync with the project. A much more productive option is to use git to merge master branch with your changes to the default template.

Made a fix to this one too (but read note** below). Suppose you want to have custom skins placed in directory:

/home/graeme/forum_skins

Add setting to your settings.py:

ASKBOT_EXTRA_SKIN_DIRS = ('/home/graeme/forum_skins',) #a tuple add trailing comma

Note that the usual TEMPLATE_DIRS setting is not used by askbot.

Make one and have the following structure:

/home/graeme/forum_skins/
                     somename/
                            templates/
                            media/

Skin names must be unique and should not clash with the "canned" ones. At this point names "default" and "common" are taken.taken. Add to your skin only files that you want to make different from default, adding other files is not necessary.

Then you'll be able to set the skin from settings, however you have to restart the application to apply changes. Hopefully we'll figure out how to force jinja recompile templates on the go some time in the future.

The django's TEMPLATE_DIRS approach does not work with askbot because of how skinning system is set up. The few reasons for not using TEMPLATE_DIRS are: skins come with media as well as templates, they have name. So there is a specific expectation of the directory structure and I've decided to bypass the TEMPLATE_DIRS entirely. Maybe it's not the best way to go, drop a note if you have an idea...

Note(**)

Unfortunately at this point you are on your own in keeping your custom templates in sync with the project. A much more productive option is to use git to merge master branch with your changes to the default template.

Made a fix to this one too in version 0.6.30 (but read a note** below). Suppose you want to have custom skins placed in directory:

/home/graeme/forum_skins

Add setting to your settings.py:

ASKBOT_EXTRA_SKIN_DIRS = ('/home/graeme/forum_skins',) #a tuple add trailing comma

Note that the usual TEMPLATE_DIRS setting is not used by askbot.

Make one and have the following structure:

/home/graeme/forum_skins/
                     somename/
                            templates/
                            media/

Skin names must be unique and should not clash with the "canned" ones. At this point names "default" and "common" are taken. Add to your skin only files that you want to make different from default, adding other files is not necessary.

Then you'll be able to set the skin from settings, however you have to restart the application to apply changes. Hopefully we'll figure out how to force jinja recompile templates on the go some time in the future.

The django's TEMPLATE_DIRS approach does not work with askbot because of how skinning system is set up. The few reasons for not using TEMPLATE_DIRS are: skins come with media as well as templates, they have name. So there is a specific expectation of the directory structure and I've decided to bypass the TEMPLATE_DIRS entirely. Maybe it's not the best way to go, drop a note if you have an idea...

Note(**)

Unfortunately at this point you are on your own in keeping your custom templates in sync with the project. A much more productive option is to use git to merge master branch with your changes to the default template.

Made a fix to this one too in version 0.6.30 (but read a note** below). Suppose you want to have custom skins placed in directory:

/home/graeme/forum_skins

Add setting to your settings.py:

ASKBOT_EXTRA_SKIN_DIRS ASKBOT_EXTRA_SKINS_DIR = ('/home/graeme/forum_skins',) #a tuple add trailing comma
'/home/graeme/forum_skins'

Note that the usual TEMPLATE_DIRS setting is not used by askbot.

Make one and have the following structure:

/home/graeme/forum_skins/
                     somename/
                            templates/
                            media/

Skin names must be unique and should not clash with the "canned" ones. At this point names "default" and "common" are taken. Add to your skin only files that you want to make different from default, adding other files is not necessary.

Then you'll be able to set the skin from settings, however you have to restart the application to apply changes. Hopefully we'll figure out how to force jinja recompile templates on the go some time in the future.

The django's TEMPLATE_DIRS approach does not work with askbot because of how skinning system is set up. The few reasons for not using TEMPLATE_DIRS are: skins come with media as well as templates, they have name. So there is a specific expectation of the directory structure and I've decided to bypass the TEMPLATE_DIRS entirely. Maybe it's not the best way to go, drop a note if you have an idea...

Note(**)

Unfortunately at this point you are on your own in keeping your custom templates in sync with the project. A much more productive option is to use git to merge master branch with your changes to the default template.

Made a fix to this one too in version 0.6.30 (but read a note** below). Suppose you want to have custom skins placed in directory:

/home/graeme/forum_skins

Add setting to your settings.py:

ASKBOT_EXTRA_SKINS_DIR = '/home/graeme/forum_skins'

Note that the usual TEMPLATE_DIRS setting is not used by askbot.

Make one and have the following structure:

/home/graeme/forum_skins/
                     somename/
                            templates/
                            media/

Skin names must be unique and should not clash with the "canned" ones. At this point names "default" and "common" are taken. Add to your skin only files that you want to make different from default, adding other files is not necessary.

edit: to debug Jinja2 templates set DEBUG=True and TEMPLATE_DEBUG=False in settings.py it's strange, but this combination of settings makes the errors in templates trigger debugging output.

Then you'll be able to set the skin from settings, however you have to restart the application to apply changes. Hopefully we'll figure out how to force jinja recompile templates on the go some time in the future.

The django's TEMPLATE_DIRS approach does not work with askbot because of how skinning system is set up. The few reasons for not using TEMPLATE_DIRS are: skins come with media as well as templates, they have name. So there is a specific expectation of the directory structure and I've decided to bypass the TEMPLATE_DIRS entirely. Maybe it's not the best way to go, drop a note if you have an idea...

Note(**)

Unfortunately at this point you are on your own in keeping your custom templates in sync with the project. A much more productive option is to use git to merge master branch with your changes to the default template.