# Django: save() prohibited to prevent data loss due to unsaved related object 'predictions'

**URL:** <https://forum.djangoproject.com/t/django-save-prohibited-to-prevent-data-loss-due-to-unsaved-related-object-predictions/17730>\
**Category:** Forms & APIs\
**Created:** [December 19, 2022, 5:35pm UTC](https://forum.djangoproject.com/t/django-save-prohibited-to-prevent-data-loss-due-to-unsaved-related-object-predictions/17730 "2022-12-19T17:35:03Z")\
**Posts on this page:** 1\
**Showing post:** 15

<div class="post-metadata">

**Author:** ![KenWhitesell](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.djangoproject.com/kenwhitesell/32/280_2.png) [@KenWhitesell](https://forum.djangoproject.com/u/KenWhitesell)\
**Post date:** [December 26, 2022, 2:51pm UTC](https://forum.djangoproject.com/t/django-save-prohibited-to-prevent-data-loss-due-to-unsaved-related-object-predictions/17730/15 "2022-12-26T14:51:50Z")

</div>

There is no functional difference between an FBV and a CBV.

A CBV is merely a “code-organization” tool that, in some situations, greatly reduces the amount of code needing to be written for a particular type of view.

The Django-provided CBVs are _not_ the _only_ CBVs that can be created - they’re a starting point, not an ending point, and generally useful in a well-defined set of circumstances. (For an example of an alternative implementation of the CBV concept, see [http://django-vanilla-views.org/](http://django-vanilla-views.org/))

Likewise, there are many situations where the Django generic CBVs are a poor choice. (I’ve written about that in other posts here in the forum.) In those situations, you would want to either create your own CBVs to enhance what Django has provide, or use FBVs.

There are others here who more strongly express the idea that FBVs are the only way to go. (See [Django Views — The Right Way](https://spookylukey.github.io/django-views-the-right-way/) as an example)

In my opinion there is no absolute “right” or “wrong” here - it’s an architectural decision that should be made in the context of the overall system being developed.

---

_[View the full topic](https://forum.djangoproject.com/t/django-save-prohibited-to-prevent-data-loss-due-to-unsaved-related-object-predictions/17730)._
