vk feed module
This commit is contained in:
@@ -1,7 +1,11 @@
|
||||
import yaml
|
||||
from django.views.generic import TemplateView
|
||||
from djconfig import config
|
||||
from jconfig.base import BaseConfig
|
||||
from yaml.parser import ParserError
|
||||
|
||||
from cabinet.utils import CabinetViewMixin
|
||||
from feeds.forms import FeedForm, get_config_form
|
||||
from feeds.forms import FeedForm, get_config_form, FeedsAppConfigForm
|
||||
from feeds.models import Feed
|
||||
|
||||
|
||||
@@ -36,3 +40,19 @@ class BaseFeedConfigView(CabinetViewMixin, TemplateView):
|
||||
ctx['feed_form'], ctx['config_form'] = self.get_forms() if forms is None else forms
|
||||
ctx['feed_module'] = self.get_content_type().model_class()
|
||||
return ctx
|
||||
|
||||
|
||||
class DatabaseConfig(BaseConfig):
|
||||
__slots__ = ()
|
||||
|
||||
def load(self, **kwargs):
|
||||
config._reload_maybe()
|
||||
try:
|
||||
settings = yaml.load(config.vk_auth)
|
||||
except (ParserError, AttributeError):
|
||||
settings = {}
|
||||
settings.setdefault(self.section_name, {})
|
||||
return settings
|
||||
|
||||
def save(self):
|
||||
FeedsAppConfigForm(data={'vk_auth': yaml.dump(self._settings)}).save()
|
||||
|
Reference in New Issue
Block a user