<div dir="ltr">Salve a tutti,<div><br></div><div>da poco ho sviluppato una piccola applicazione desktop, con pyqt5, che tra le altre cose si interfaccia ad una API REST e invia file ad un server; per semplificarmi un po la vita ho creato un modulo dove sono specificati tutti i settaggi del caso (URL, percorsi del disco etc) e fin qui tutto abbastanza normale.</div>
<div>Per semplificarmi un pelo di più la vita (cioè per evitare di fare una nuova build ad ogni cambiamento) ho tirato fuori questo codice:</div><div><br></div><div><div>__doc__ = """</div><div>config.py - read specified configuration file (defaults to config.json) </div>
<div>and updates settings.py module variables accordingly</div><div>"""</div><div>import json</div><div>from settings import settings</div><div><br></div><div><br></div><div>def read_configuration(filename='config.json'):</div>
<div> with open(filename, 'r') as f:</div><div> obj = json.load(f)</div><div><br></div><div> for k, v in obj.items():</div><div> settings.__dict__[k] = v</div><div><br></div><div> return obj</div>
</div><div><br></div><div>in questo modo posso modificare sti benedetti settings una volta che l'applicazione è stata "pacchettizzata" con cx_freeze</div><div><br></div><div>Chiaramente è una soluzione molto semplice e mi chiedevo se non esistesse qualcosa di gia pronto o delle best practice per affrontare questo problemino.</div>
<div><br></div><div>Buona domenica a tutti,</div><div>Francesco</div><div><br></div><div>-- <br>"Shipping is a feature. A really important feature. Your product must have it."<br><br>"Rendete ogni cosa il più semplice possibile, ma non di più" (Albert Einstein)<br>
<br>"You are what you choose today, not what you've chosen before"<br><br>"Unix IS user friendly. It's just selective about who its friend are"
</div></div>