質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Q&A

解決済

1回答

934閲覧

Flaskでのデータの保存,呼び出しについて

SotaUN

総合スコア17

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

0グッド

0クリップ

投稿2021/09/28 08:44

Webアプリケーション初心者なんですが、現在Flaskを使ったアプリを作成しています。

そこで、ユーザー名やメールアドレスなどの情報をサーバーに保存したいと思ったのですが、自分が調べた限り、

・jsonを返すWebAPIを作る
・.dbファイルを作り、sqlalchemyで操作する

という方法を見つけたのですが、それぞれの方法のメリット、デメリットはなんでしょうか。
参考になるサイトなど、ご教授頂きたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

・jsonを返すWebAPIを作る
・.dbファイルを作り、sqlalchemyで操作する

という方法を見つけたのですが、それぞれの方法のメリット、デメリットはなんでしょうか。

上記のメリットとデメリットということでしょうか???

ユーザー名やメールアドレスなどの情報をサーバーに保存したい

のですよね?

この二つは別の事を指しているので、対比することはできないと考えられます。

ユーザ名やメールアドレスなどの情報を保存する場合、何らかの保存先が必要です。
Webの場合、保存先は大抵の場合Databaseです。
「.dbファイルを作り、sqlalchemyで操作する」はDBを作成して操作するにあたります。

上記でDBを作成して操作できるようにはなりましたが、アクセス方法がありません。
アクセスするために「jsonを返すWebAPIを作る」というのを行います。

なので、この二つは排他ではなくメリットデメリットを語れるレベルの質問になっていないように見えます。

質問が例えば

「WebAPI(たぶんRESTの)を作成する」のと「render_templateを使ってHTMLを返す」ののメリットデメリット、
「sqliteを使って.dbファイルを作成する」のと「RDBMSを使う」ののメリットデメリット。
ということだったら回答のしようもあるかと思いますが、現状では調査不足勉強不足と判断され悪い評価がつくだけと思います。

とりあえず勉強ということでしたらsqliteを使って.dbファイルを作ってみるのは良いと思います。
本番環境に移行する前にRDBMSに移行しましょう。
また、flaskの場合sqlalchemyではなくflask-sqlahcmeyを使用して下さい。
flask-sqlalchemyはsqlalchemyをラップしてFlaskで使いやすいように改良されているものです。
flaskでsqlalchemyを使うのが無理ということではありませんが、flask-sqlalchemyを使うのが無難です。

投稿2021/09/29 01:01

FiroProchainezo

総合スコア2424

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SotaUN

2021/09/29 06:43

私の勉強不足でした。 ご親切にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問