2013-03-23 74 views
0

正如你知道,當你有一個像博客的應用程序,用戶可以發表文章,畫廊,創建靜態頁面,編輯編輯他們...如何在每個用戶的應用程序上創建新的數據庫或數據庫實例?

你有一個像表:

  • 文章
  • 作者
  • 編輯
  • 畫廊
  • 靜態頁 等

如果你想創建一個博客服務,每個用戶都可以創建他們自己的博客,該怎麼辦?

當我們再看上面的例子時,我們必須在每個表上創建一些額外的表和字段。

一些用戶可以訂閱我們的服務,並建立自己的博客:

用戶 博客 subscriber_id 作者 blog_id 編輯 blog_id 畫廊 blog_id 靜態頁面 blog_id

而且你必須檢查每個請求,如果用戶有該博客,被授權等等。

正如您所看到的,這是一個非常複雜的簡單博客軟件。

取而代之,是否有任何應用程序或雲服務可以在我的軟件上使用它的api,並使用apps sql和我的用戶註冊並開始使用其服務時創建新的乾淨數據庫實例?

我現在很堅持這一點...任何幫助將不勝感激。

+0

您仍然可以允許用戶使用一個數據庫中創建自己的博客。如果你想使用一個單獨的API,你將不得不管理用戶登錄的詳細信息到該服務和相關的密鑰(這可能會或可能不會違反API的服務條款) – acutesoftware 2013-03-23 14:08:08

+0

這聽起來像你正在試圖學習編程和設計數據庫。在這種特殊情況下,您可能值得花時間搜索開源軟件,它可以完成類似於您想要的任何操作 - 瞭解它們是如何實現的。關於數據庫設計/規範化的基本書肯定是有益的。 – 2013-03-28 02:37:40

回答

2

我有點困惑。

  1. 你想擁有一個博客服務,人們可以註冊並獲得有自己的博客網站?
  2. 你想把每個新的博客用戶放在一個單獨的數據庫上?

除非您打算擁有數十萬用戶您真的只需要1個數據庫即可啓動。

我不認爲你需要創建額外的表或字段。所有鏈接到作者的表都應該有一個author_id字段或一個連接表。

所以.. 博客們在註冊時會被放入作者。

作者將包含那裏ID。

所有其他表將通過id字段或連接表與該id相關聯。所以如果你從文章,畫廊等選擇... 你會簡單地做

SELECT * FROM文章的WHERE AUTHOR_ID = 1234

+0

這是最好的方法。基本上你想要的就是創建它們的用戶限制了對帖子的訪問權限。即只允許當前登錄的用戶編輯他/她自己的帖子。這樣,您仍然可以分配允許從* any *用戶編輯/刪除帖子的'admin'用戶,例如,調整職位。要*僅查看特定用戶的帖子,您可以通過網址(例如www.mydomain.com/posts/user1/article123)傳遞博客用戶,或者爲每個用戶使用一個「子域名」,並將其用於過濾(例如user1.mydomain.com,user2.mydomain.com) – thaJeztah 2013-03-23 14:46:50

相關問題