"""网站配置服务""" from app import db from app.models import SiteConfig class SiteConfigService: """网站配置业务逻辑""" @staticmethod def get_config(): """获取网站配置""" return SiteConfig.get_config() @staticmethod def update(**kwargs): """更新网站配置""" config = SiteConfig.get_config() for key, value in kwargs.items(): if hasattr(config, key): setattr(config, key, value) db.session.commit() return config @staticmethod def get_dict(): """获取配置字典(用于模板全局变量)""" config = SiteConfig.get_config() return { 'site_name': config.site_name, 'site_subtitle': config.site_subtitle, 'site_logo': config.site_logo, 'site_keywords': config.site_keywords, 'site_description': config.site_description, 'footer_text': config.footer_text, 'footer_copyright': config.footer_copyright, 'footer_technology': config.footer_technology, 'promo_image_1': config.promo_image_1, 'promo_image_1_title': config.promo_image_1_title, 'promo_image_1_link': config.promo_image_1_link, 'promo_image_2': config.promo_image_2, 'promo_image_2_title': config.promo_image_2_title, 'promo_image_2_link': config.promo_image_2_link, 'promo_image_3': config.promo_image_3, 'promo_image_3_title': config.promo_image_3_title, 'contact_email': config.contact_email, 'contact_github': config.contact_github, 'articles_per_page': config.articles_per_page, }