在完成关于Rails的Michael Hartl教程后,我的第一个宠物项目是使用Twilio API构建一个呼叫跟踪应用程序。基本思路如下 -
用户可以注册4个计划,这限制了他们拥有的电话号码数量以及他们可以使用的分钟数
每个用户一旦注册,就会从Twilio获得自己的子帐户
每个用户都可以购买电话号码,仅限于他们的计划
每个用户都可以跟踪他们的电话号码发生了什么。
现在,我已经构建了一个基本的授权系统,并集思广益了一个潜在的数据结构。虽然我在理解上有很大的循环漏洞,所以有经验的程序员的眼睛会非常感激。我是否有更好的数据结构,我在下面概述的内容是否有意义?
---所以,这是数据结构
表:计划
max_phone_numbers: integer
max_minutes: integer
has_many: users
表:用户
name:string
email:string
password_digest:string
remember_token:string [For log in system]
Twilio_SubAccountSid: string
Twilio_SubAccountAuthToken: string
Plan id : integer [to connect to plan]
stripe_token : string [for charging]
belongs_to: plan
has_many: phone_numbers
表:电话号码
belongs_to users
phone_number:string
user_id: integer
has_many: data_points
表:Twilio数据
belongs_to phone_numbers
phone_number_id: string
[All of Twilio's call tracking data..i.e duration of call, location etc.]
好的,这几乎是我对它如何运作的诠释。请撕开它!
答案 0 :(得分:0)
就数据结构而言,我认为这似乎就是这样。我没有意识到的是,还有更多的控制器参与其中。例如,在Twilio中搜索和购买涉及两个CREATE操作,因此我不得不制作另一个控制器。我想会有另一个控制器来负责路由呼叫。