improved server.py

This commit is contained in:
Yaman Qalieh 2018-01-16 22:00:32 -05:00
parent 487224c93f
commit e49ca04079
2 changed files with 14 additions and 9 deletions

2
SmearcarDB/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.p
venv

View File

@ -6,7 +6,8 @@ import random
app = Flask(__name__) app = Flask(__name__)
try: try:
database = pickle.load(open("save.p", "rb")) with open("save.p", "rb") as f:
database = pickle.load(f)
except (FileNotFoundError) as e: except (FileNotFoundError) as e:
database = {'languages': [], database = {'languages': [],
'phonemes': [], 'phonemes': [],
@ -29,20 +30,22 @@ def backend():
# TODO add more methods # TODO add more methods
elif request.method == "POST": elif request.method == "POST":
newlanguage = request.get_json() newlanguage = request.get_json()
database.values.append(newlanguage) database['values'].append(newlanguage)
# Add new phonemes # Add new phonemes
newphonemes = list(newlanguage.phonemes) newphonemes = list(newlanguage[ 'phonemes' ])
uniquephonemes = list(set(newphonemes) - set(database.phonemes)) uniquephonemes = list(set(newphonemes) - set(database[ 'phonemes' ]))
database.phonemes = database.phonemes + uniquephonemes database['phonemes'] = database['phonemes'] + uniquephonemes
# Add new language # Add new language
newlang = list(newlanguage.name) newlang = {newlanguage['name']}
uniquelanguages = list(set(newlang) - set(database.languages)) uniquelanguages = list(newlang - set(database['languages']))
database.languages = database.languages + uniquelanguages database['languages'] = database['languages'] + uniquelanguages
# Save copy under separate name
with open("newestsave.p", "wb") as f:
pickle.dump(database, f)
pickle.dump(database, open("newestsave.p", "wb"))
return jsonify(database) return jsonify(database)
else: else: