回答編集履歴

1

質問を受けての追記への追記

2018/04/21 07:53

投稿

takyafumin
takyafumin

スコア2335

test CHANGED
@@ -11,3 +11,37 @@
11
11
  * ファイル名が`id-xxxx.yyy`という形式が守られるのであれば、`public/images/teachers/`フォルダ内をユーザID+ハイフン(例でいうと"4-")の前方一致検索でファイル名を取得して「(ここをどう書けば??)」部分に入れる
12
12
 
13
13
  * いっそのこと、ファイル名を「ユーザID.jpg」というファイル名にして保存するようにし、表示時も「ユーザID.jpg」として扱う
14
+
15
+
16
+
17
+ ## 質問を受けての追記への追記
18
+
19
+
20
+
21
+ ディレクトリパスについては、「運用上画像ファイルをどのように扱いたいか」で仕様を決めるのが良さそうに感じました。この辺りを明記されるとさらに良い回答が得られそうです。
22
+
23
+ 運用が考慮できていないかもしれませんが、例えばこういった規約にしてみるのもありですかね。
24
+
25
+
26
+
27
+ * プロフィール画像はユーザIDに紐づくような規約(ディレクトリにユーザIDまたはそれに準ずる情報を使う)
28
+
29
+ * ブログ画像は日付や記事IDなど一意性のある情報と連番を組み合わせた規約
30
+
31
+
32
+
33
+ ユーザ退会のような業務がある場合、関連する画像を削除しやすく設計しておくと良さそうですね。
34
+
35
+ またプロフィール画像は最新版だけあればいい、のであれば、ユーザごとにファイル名を固定にしておいて上書きする運用もありかと思います。
36
+
37
+ ブログ画像は記事削除時に画像ファイルも削除したいようであれば、記事IDに紐づく形で管理できるといいですね。
38
+
39
+
40
+
41
+ この場合、プロフィール画像とブログ画像は別のテーブルで管理する方が良さそうです。(保持の単位が異なるので)
42
+
43
+
44
+
45
+ * プロフィール画像の情報はユーザ情報と同一テーブル、または1対1で紐づくテーブルで管理する
46
+
47
+ * ブログ画像の情報は記事情報に1対Nで紐づくテーブルで管理する