我們正試圖移動我們的一些應用程序以使用骨幹和品牌。我設置了REST API,它正在處理一些基本示例。然而,有些情況下,我們目前發佈一個Ajax請求的自定義URL的幾個問題,並在該視圖做幾件事情像當使用Django,Backbone和Tastypie處理REST API時,相關邏輯在何處進行模型創建?
- 進行有關對象
- 調用一些相關的功能
但是,現在我已將這些功能切換爲使用主幹和REST API,但我不確定所有這些應該去哪裏!
例如,我有一個想法來製作一個Message
,當我製作一個Message
時,我也製作了一個Notification
並調用了一個函數來爲用戶添加一些點。類似於
def ajax_send_message(request):
## ... set up some variables ...
## Make the new message
message = Message(user=user, content=message)
message.save()
## Make the notification
notification = Notification(message=message)
notification.save()
## Give the user points
user.add_points_for_message();
return json_response({"status": "ok"})
現在 - 我只是應該這樣做所有的JavaScript?我也有一個Message
骨幹模型。
// Create message backbone object
var msg = new Message({content:content, user: user});
// Post to server
msg.save();
// Add to backbone collection
messages.add(msg);
我看tastypie的不同部位,它似乎可以創建自定義URL端點,並做驗證,但是,這並不似乎是合適的地方來調用相關的方法。看起來,調用相關方法違背了REST部分---但是他們應該去哪裏?
如果我只想在創建對象時向骨幹添加一些邏輯,那麼它會去哪裏?