File size: 1,638 Bytes
41f9c0c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# app.py
from flask import Flask, render_template, request, redirect, url_for
from translation_data import translation_dict_A, translation_dict_B

app = Flask(__name__)

# リストに変換
english_sentences_A = list(translation_dict_A.keys())
japanese_translations_A = list(translation_dict_A.values())
english_sentences_B = list(translation_dict_B.keys())
japanese_translations_B = list(translation_dict_B.values())

@app.route('/')
def index():
    set_name = request.args.get('set', 'A')
    index = int(request.args.get('index', 0))
    if set_name == 'A':
        english = english_sentences_A[index]
        japanese = japanese_translations_A[index]
    else:
        english = english_sentences_B[index]
        japanese = japanese_translations_B[index]
    return render_template('index.html', set_name=set_name, index=index, english=english, japanese=japanese)

@app.route('/next')
def next_card():
    set_name = request.args.get('set', 'A')
    index = int(request.args.get('index', 0)) + 1
    if set_name == 'A' and index >= len(english_sentences_A):
        index = 0
    elif set_name == 'B' and index >= len(english_sentences_B):
        index = 0
    return redirect(url_for('index', set=set_name, index=index))

@app.route('/prev')
def prev_card():
    set_name = request.args.get('set', 'A')
    index = int(request.args.get('index', 0)) - 1
    if index < 0:
        if set_name == 'A':
            index = len(english_sentences_A) - 1
        else:
            index = len(english_sentences_B) - 1
    return redirect(url_for('index', set=set_name, index=index))

if __name__ == '__main__':
    app.run(debug=True)