{"action":"created","issue":{"url":"https://api.github.com/repos/django-oscar/django-oscar/issues/685","labels_url":"https://api.github.com/repos/django-oscar/django-oscar/issues/685/labels{/name}","comments_url":"https://api.github.com/repos/django-oscar/django-oscar/issues/685/comments","events_url":"https://api.github.com/repos/django-oscar/django-oscar/issues/685/events","html_url":"https://github.com/django-oscar/django-oscar/issues/685","id":14556939,"number":685,"title":"Non abstract Benefit model with unique proxy_class is hard to modify or extend","user":{"login":"riklaunim","id":1822699,"avatar_url":"https://avatars.githubusercontent.com/u/1822699?v=3","gravatar_id":"","url":"https://api.github.com/users/riklaunim","html_url":"https://github.com/riklaunim","followers_url":"https://api.github.com/users/riklaunim/followers","following_url":"https://api.github.com/users/riklaunim/following{/other_user}","gists_url":"https://api.github.com/users/riklaunim/gists{/gist_id}","starred_url":"https://api.github.com/users/riklaunim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riklaunim/subscriptions","organizations_url":"https://api.github.com/users/riklaunim/orgs","repos_url":"https://api.github.com/users/riklaunim/repos","events_url":"https://api.github.com/users/riklaunim/events{/privacy}","received_events_url":"https://api.github.com/users/riklaunim/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/django-oscar/django-oscar/labels/%E2%98%BC%20Enhancement","name":"☼ Enhancement","color":"D8E4FD"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2013-05-21T08:37:35Z","updated_at":"2015-12-10T12:58:27Z","closed_at":null,"body":"offer/Benefit is a non abstract model so it can't be overridden/extended by overriding the application and making some new migrations for locally changed Benefit model. Second problem is unique proxy_class which prevents adding more than one Voucher with custom proxy_class (and  I have to set them as... Benefit is not abstract).\r\n\r\nI've make manual migration to remove the unique from proxy_class and now I can use multiple vouchers with a proxy class (\"most expensive for free\") for different product sets with no problems. So the question is why Benefit model is done as it is? Why it is non-abstract and why proxy_class is unique?"},"comment":{"url":"https://api.github.com/repos/django-oscar/django-oscar/issues/comments/163603710","html_url":"https://github.com/django-oscar/django-oscar/issues/685#issuecomment-163603710","issue_url":"https://api.github.com/repos/django-oscar/django-oscar/issues/685","id":163603710,"user":{"login":"maikhoepfel","id":509427,"avatar_url":"https://avatars.githubusercontent.com/u/509427?v=3","gravatar_id":"","url":"https://api.github.com/users/maikhoepfel","html_url":"https://github.com/maikhoepfel","followers_url":"https://api.github.com/users/maikhoepfel/followers","following_url":"https://api.github.com/users/maikhoepfel/following{/other_user}","gists_url":"https://api.github.com/users/maikhoepfel/gists{/gist_id}","starred_url":"https://api.github.com/users/maikhoepfel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maikhoepfel/subscriptions","organizations_url":"https://api.github.com/users/maikhoepfel/orgs","repos_url":"https://api.github.com/users/maikhoepfel/repos","events_url":"https://api.github.com/users/maikhoepfel/events{/privacy}","received_events_url":"https://api.github.com/users/maikhoepfel/received_events","type":"User","site_admin":false},"created_at":"2015-12-10T12:58:27Z","updated_at":"2015-12-10T12:58:27Z","body":"FYI, you can use @specialunderwear's [mean class hack](https://gist.github.com/specialunderwear/9d917ddacf3547b646ba) to remove the uniqueness constraint until my PR is merged. "}}