Basic understanding of Oscar: 'domain-driven sites' and 'multi site' / 'multi tenancy'

746 views
Skip to first unread message

Paul Phrame

unread,
Mar 9, 2014, 8:26:08 AM3/9/14
to django...@googlegroups.com
Hello,

I just came across Oscar and it looks very interesting. I looked into the docs but still couldn't figure out some of the basic concepts- now hoping that somebody could help me  :-)

  • The definition of Oscar is: "Oscar is an e-commerce framework for Django designed for building domain-driven sites."

    Now, what exactly is a 'domain-driven site'? Even the hoster of this Newsgroup couldn't give me an answer  ;-)



  •  In the context of e-commerce there are a lot of terms - sometimes used as synonyme sometimes in contradictory meanings....

    Concerning Oscar I read 'multi site' / 'multi tenancy'

    What exactly is meant by 'tenant'? It could point into the direction of an 'multi vendor shop', i.e. a marketplace with many independent shops fom many vendors (= tenants?), e.g. eBay, etsy, Amazon marketplace, etc.

Thanks for your help in advance


Cheers

Paul

David Winterbottom

unread,
Mar 10, 2014, 6:31:10 AM3/10/14
to django-oscar
On 9 March 2014 12:26, Paul Phrame <paul....@gmail.com> wrote:
Hello,

I just came across Oscar and it looks very interesting. I looked into the docs but still couldn't figure out some of the basic concepts- now hoping that somebody could help me  :-)

  • The definition of Oscar is: "Oscar is an e-commerce framework for Django designed for building domain-driven sites."

    Now, what exactly is a 'domain-driven site'? Even the hoster of this Newsgroup couldn't give me an answer  ;-)

In short, Oscar allows virtually any part of it to be customised so you can bend it to accurately model your business, rather than having to alter your business processes to work with some e-commerce software.

I appreciate it's a bit woolly.

PS - The DDD book by Eric Evans is excellent if you haven't read it already:
 



  •  In the context of e-commerce there are a lot of terms - sometimes used as synonyme sometimes in contradictory meanings....

    Concerning Oscar I read 'multi site' / 'multi tenancy'
​I can't find the words "multi site" or "tenancy" anywhere in Oscar's docs - where did you see them?​

  • What exactly is meant by 'tenant'? It could point into the direction of an 'multi vendor shop', i.e. a marketplace with many independent shops fom many vendors (= tenants?), e.g. eBay, etsy, Amazon marketplace, etc.
I suppose it's normally used to mean a single codebase that serves several shops/tenants.  Each tenant would normally have it's own URL and possibly sell a subset of the overall catalogue. They would have different CMS/merchandising content too. You basically need lots of foreign keys to the Site model :)

Oscar provide that much support for this by default, but it's easy to extend Oscar's models to add the fields you need. This is something I'd like to review before we get to 1.0 but it's a few months off at the moment tbh.

Hope that's useful.

 

Thanks for your help in advance


Cheers

Paul

--
https://github.com/tangentlabs/django-oscar
http://django-oscar.readthedocs.org/en/latest/
https://twitter.com/django_oscar
---
You received this message because you are subscribed to the Google Groups "django-oscar" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-oscar...@googlegroups.com.
Visit this group at http://groups.google.com/group/django-oscar.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-oscar/209bdc1d-438d-4f68-8d56-f06ca79115c9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
David Winterbottom
Technical Director

Tangent Labs
84-86 Great Portland Street
London W1W 7NR
England, UK

Paul Phrame

unread,
Mar 22, 2014, 2:05:27 PM3/22/14
to django...@googlegroups.com, david.win...@tangentlabs.co.uk
Hi David,

thanks for your answer, sorry for my delay



On Monday, 10 March 2014 11:31:10 UTC+1, David Winterbottom wrote:
 
  • Now, what exactly is a 'domain-driven site'? Even the hoster of this Newsgroup couldn't give me an answer  ;-)

In short, Oscar allows virtually any part of it to be customised so you can bend it to accurately model your business, rather than having to alter your business processes to work with some e-commerce software.

I appreciate it's a bit woolly.

Yes, it is  :-)
Anyway, it makes sense.
 

PS - The DDD book by Eric Evans is excellent if you haven't read it already:

Thanks for your hint!

 


  • Concerning Oscar I read 'multi site' / 'multi tenancy'
​I can't find the words "multi site" or "tenancy" anywhere in Oscar's docs - where did you see them?​
 

Sorry, I should have mentioned that I referred to 'Django Packages', which has some maybe homemade terminology.


  • What exactly is meant by 'tenant'? It could point into the direction of an 'multi vendor shop', i.e. a marketplace with many independent shops fom many vendors (= tenants?), e.g. eBay, etsy, Amazon marketplace, etc.
I suppose it's normally used to mean a single codebase that serves several shops/tenants.  Each tenant would normally have it's own URL and possibly sell a subset of the overall catalogue. They would have different CMS/merchandising content too. You basically need lots of foreign keys to the Site model :)

Oscar provide that much support for this by default, but it's easy to extend Oscar's models to add the fields you need. This is something I'd like to review before we get to 1.0 but it's a few months off at the moment tbh.


Just to make me better understand:
My plan is to build a so called 'multi-vendor-shop', i.e. a marketplace, something in the structure of eBay, etsy shop, etc.  In this structure you have someone who runs the marketplace, you have vendors, that rent shops in this marketplace and pay commissions to the marketplace owners (flat or by revenue) and last but not least you have buyers that go through the virtual shops and buy offered items. These consuming buyers can also rate the vendors and products (similar to amazon marketplace, eBay, etc.).


So the questions are:

1) Is it possible to do this with Oscar out of the box?
(Well, probably not)
2) If not: would it make sense to start with Oscar to build a marketplace like this?
3) If yes: Could you give some hints which way to go

Thanks again in advance!


Cheers

Paul






Diego Barrera

unread,
Mar 23, 2014, 11:25:38 AM3/23/14
to django...@googlegroups.com, david.win...@tangentlabs.co.uk


Il giorno sabato 22 marzo 2014 19:05:27 UTC+1, Paul Phrame ha scritto:

Just to make me better understand:
My plan is to build a so called 'multi-vendor-shop', i.e. a marketplace, something in the structure of eBay, etsy shop, etc.  In this structure you have someone who runs the marketplace, you have vendors, that rent shops in this marketplace and pay commissions to the marketplace owners (flat or by revenue) and last but not least you have buyers that go through the virtual shops and buy offered items. These consuming buyers can also rate the vendors and products (similar to amazon marketplace, eBay, etc.).

 

So the questions are:

1) Is it possible to do this with Oscar out of the box?
(Well, probably not)
2) If not: would it make sense to start with Oscar to build a marketplace like this?
3) If yes: Could you give some hints which way to go

 
I'm doing a similar thing .. from my point of view oscar has many hooks to customize the app, you need to invest in understanding how the framework works.
Any advice from the staff is very welcome from me too
bye diego

David Winterbottom

unread,
Apr 4, 2014, 4:20:42 PM4/4/14
to Paul Phrame, django-oscar
Apologies, I'm terribly behind on my email. Just getting to Oscar mailing list now.


​Not "out of the box" - as Diego mentioned, you'll have to use the various extension mechanisms that Oscar supports in order to bend it to meet your requirements.​

 
2) If not: would it make sense to start with Oscar to build a marketplace like this?
3) If yes: Could you give some hints which way to go

​I think it would (I'm not aware of a better framework for it). You'll likely want to write a custom dashboard for sellers to manage their products. You'll also need to modify checkout to ensure commissions are calculated properly​.

Whatever you decide - good luck. Happy to help with further questions (I'll try not to take so long to reply next time).

 

Thanks again in advance!


Cheers

Paul






Alireza Ahmadi

unread,
May 17, 2017, 10:31:48 AM5/17/17
to django-oscar
Hi Paul,
I just saw your topic here from 2-3 years ago. And I'm searching for same feature in django-oscar. Please let me know if you finally found a library, package or solution for your need.
Reply all
Reply to author
Forward
0 new messages