3 votes

L'application crée rapidement un dossier et un fichier de configuration dans le dossier personnel de l'utilisateur.

Je veux créer une application avec Quickly mais j'ai une question : Beaucoup d'applications créent des fichiers de configuration sous ~/.config ou ~/.application/config dans le dossier personnel de l'utilisateur actuel et conservent les configurations, les paramètres de l'utilisateur dans ces fichiers. Les applications utilisent ces fichiers de configuration pour la prochaine exécution. Je peux utiliser gsettings pour les configurations des applications mais je veux créer un fichier texte de configuration et l'utiliser. Comment puis-je faire cela avec le modèle d'application ubuntu Quickly ? J'ai regardé dans ~/myapp/myapp_lib/Builder.py et ~/myapp/myapp_lib/myappconfig.py mais je n'ai pas trouvé de solution. Merci

2voto

Ghirai Points 11

Quickly n'offre pas d'aide pour configurer un fichier texte de configuration, vous devrez le faire vous-même. GLib vous offre un moyen facile de récupérer le répertoire de configuration de l'utilisateur, GLib.get_user_config_dir() et vous pouvez utiliser ConfigParser pour gérer le fichier lui-même.

Quelque chose comme ça :

from gi.repository import GLib
import ConfigParser

[....]

    confDir =  os.path.join(GLib.get_user_config_dir(), 'myapp/')
    confFile = os.path.join(confDir + "conf.ini")
    config = ConfigParser.ConfigParser()

    if os.path.isfile(confFile):
        config.read(confFile)
        some_setting = config.get('Some Section', 'some_setting')
    else:
        if not os.path.exists(confDir):
            os.makedirs(confDir)
        config.add_section('Some Section')
        config.set('Some Section', 'some_setting', 'some_value')
        with open(confFile, 'wb') as confFile:
            config.write(confFile)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X