Devo estrarre i file di dati della lingua di un progetto da un repository GitHub?

1

Attualmente sono in un dilemma. Sto pensando di scaricare un file JSON da un repository GitHub per sostituire i file locali. I file locali sono memorizzati in una cartella denominata lang , che viene archiviata nella cartella del progetto. Il repository è memorizzato su GitHub ed è accessibile tramite un URL.

La soluzione GitHub, a mio parere, andrebbe bene in modo che potessi spingere gli aggiornamenti automatici (i nostri clienti vogliono stringhe) a progetti locali. Verrà scaricato anche solo il linguaggio richiesto e verrà scaricato ogni 30 minuti, all'avvio e tramite una funzione personalizzata. Inoltre, potrei inserire un codice in una sostituzione manuale in modo da poter fornire anche i propri. Ecco il codice per la soluzione GitHub:

def get_jsonparsed_data(url):
    response = urllib.request.urlopen(url)
    data = response.read().decode("utf-8")
    return json.loads(data)

if MESSAGE_LANGUAGE in get_jsonparsed_data("https://raw.githubusercontent.com/user/repo/master/languages.json")['languages']:
    url = ("https://raw.githubusercontent.com/user/repo/master/" + MESSAGE_LANGUAGE + ".json")
else:
    url = ("https://raw.githubusercontent.com/user/repo/master/lang.json")

lang = get_jsonparsed_data(url)

D'altra parte, la memorizzazione locale renderà più facile la modifica mentre più difficile da aggiornare.

Ecco il codice anche per questo:

if os.path.isfile('./lang/' + MESSAGE_LANGUAGE + '.json'):
    with open('lang/' + MESSAGE_LANGUAGE + '.json') as data_file:
        lang = json.load(data_file)
else:
    with open('lang/en.json') as data_file:
        lang = json.load(data_file)

Quale sarebbe meglio usare e perché?

    
posta haykam 15.01.2017 - 14:56
fonte

0 risposte

Leggi altre domande sui tag