2016-10-28 7 views
0

私は好き嫌いのために別のテーブルを作成し、好き嫌いのために投稿IDとユーザーIDを格納する必要があるのだろうかと思っていました。システムのような投稿のためのデータベースアーキテクチャを設計する最良の方法

例テーブル:ID、post_idの、USER_ID

またはべきこのようなきれいで小規模なデータベースを維持するために、ユーザーテーブルにそれを置く場合:

例既存のusers_metaテーブル(ワードプレス)

USER_ID 、post_likes(meta_value)、post_ids(array(2,3,4,5,6))

ユーザーが投稿を好きなときはいつでも、投稿IDを特定のユーザーのテーブルにプッシュするだけです。


idをユーザーのメタテーブルに入れるという考え方は、これは、データベースシステムを小さくして、ユーザーが投稿を好きかどうかを見つけ出すのを容易にします。

私が間違っている場合は、私を修正してください!

答えて

0

投稿IDをユーザーのメタに格納するのに最も良い議論は、データベースの新しいテーブルとやりとりするために、最初から関数の束を書き直す必要がないということです。 update_user_meta()などのあらかじめ作成されたWordPress関数を使用して、読み書きを行うことができます。

私はmaybe_serialize機能を介して、ユーザメタフィールドにシリアル化された配列としてユーザーが「言っています」すべての投稿をして格納することによって行われ、この正確な使用を見てきました

は:

https://codex.wordpress.org/Function_Reference/maybe_serialize

あなたはの配列を作成しますポストIDを取得し、maybe_serialize()を実行して、ユーザーのメタテーブルに値として保存します。かなり清潔でシンプル。

関連する問題