I would say that it completely depends on the targeting and uniqueness of the dependent data.
If your user-related data is user-specific (i.e., an “excellent” string, such as an attribute, such as a string representing the (unapproved) movie name), then it should be included in the POST creation of the user's presentation; however, if the data is independent of the user (where the data can be addressed independently of the user, for example, a link, for example, a movie from a set of films), then it must be added independently.
The rationale for this is that adding links complete with the original POST implies a transaction; that is, if another user removes the movie link for the “favorite” movie between when it is selected on the client and when POST passes, the user adds (by this design) a failure, whereas if the “favorite” movie is not associative, but is simply an attribute with which nothing can be done (attributes (presumably) cannot be annulled by a third party).
And again, this is very important for your specific needs, but I fall on the resolution side of partial inserts and indicate failures. The right way to handle such things if you really don't want to allow partial inserts is to simply implement transactions on the back panel; they are the only way to really deal with a situation where a critical related resource is deleted in the middle of the process.
source share