転職用のポートフォリオ作成のため、Rails単体で作成したアプリをRails API + Reactに移植することを考えています。
非常に概念的な質問なのですが、ご教示いただけると幸いです。
確認したいこと
すでに作成済みの単体Railsアプリ内にあるヘルパー内の処理は、新しく作成したRails(APIモード)+ Reactではどこに記述するのが一般的か。
言い換えると、MVCのVから呼び出されるヘルパーメソッド(+各モデル内のクラスメソッド)は、Rails内で持つものなのか、React内で持つものなのか。
# ディレクトリ構造(単体Rails) rails-app ├── app │ ├── channels │ ├── controllers │ ├── helpers <=ヘルパー内の処理はどこに行くの? │ ├── jobs │ ├── mailers │ ├── models (<=モデル内のクラスメソッドはどこに行くの?) │ └── views/layouts ├── bin ├── config ├── ... └── ...
↓
# ディレクトリ構造(Rails API + React) rails-react-app ├── api │ ├── app │ │ ├── channels │ │ ├── controllers │ │ ├── jobs │ │ ├── mailers │ │ ├── models │ │ └── views/layouts │ ├── bin │ ├── config │ ├── ... │ └── ... ├── front │ ├── ... │ ├── src │ │ ├── ... │ │ ├── App.tsx │ │ ├── ... │ │ ├── index.tsx │ │ └── ... │ └── ... ├── ... └── ...
わからないこと
Rails(API)側の役割は、jsonデータを返すことだと理解しています。このとき、このjsonデータは
- モデルから取得したレコードをそのままjsonにして返す
- モデルから取得したレコードを加工後、jsonにして返す
の2パターンの実装ができると思います。
一方で、React側では
- APIから受け取ったjsonデータを加工して表示する
- APIから受け取ったjsonデータをそのまま表示する
の2パターンがあります(リストの番号はそれぞれ対応)。
どちらが設計としては正しいのでしょうか。
インターネット上に存在する記事はjsonデータをRailsからそのまま返しているように見えるのですが、作成済みの単体Railsアプリでは非常に複雑なhelperメソッドを使用しており、その扱いのイメージが掴めません。
非常に初歩的で概念的な質問で申し訳ありませんが、ご教示いただけないでしょうか。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/23 10:12
2022/03/23 13:46