katrid / orun

Orun. Build Your Own Custom Python ERP/CRM Software.
15 stars 2 forks source link

Could you explain the architecture #1

Open andybak opened 7 years ago

andybak commented 7 years ago

This is a Django derivative project, using Flask as webserver,

I had a brief look around the code and it's obvious this is far from being a normal Django application. It would be really useful to understand your thinking on this front - and to get a sense of the architecture - especially how hard this would be to integrate into other Django projects (or how hard it would be to intergrate other Django apps into Orun)

katrid commented 7 years ago

Sorry about that, the project status is still alpha/development.

About your question, the answer is: The orun focus is not to keep compatibility with regular django apps/projects. Although you can easily manifest an Orun addon module adding the Addon class on the init.py package file. It will be well covered in future documentations

Let me try to synthesize the project goal in a few topics:

  1. I need a business framework for Dashboard/ERP/CRM development (like openerp/odoo)
  2. It must be a decent, powerful and modern framework (like django and unlike openerp/odoo)

Django and OpenERP comparison Django pros and cons:

OpenERP pros and cons:

Why Flask? Basically, Django web server is monolithic while Flask framework is more dynamic and has the context request, that's the solution for the contextual environment requests and blocks:

with app.app_context(LANGUAGE_CODE='pt-br'):
    do_something_using_the_pt_br_lang()

Why do I need the model extensibility inheritance? Try to think if you have 2 modules extending a model on the Base module, for example:


# module A
class Person(base.Contact):
    pet_name = models.CharField()

# module B
class Salesman(base.Contact):
    num_of_sales = models.IntegerField()

In the above code statement, we're extending the Base module Contact model, adding pet_name and num_of_sales columns.

Orun goal, main features:

Feel free to make more questions, I would be happy to answer

phamducthinhdev commented 3 years ago

You can write docx project installation guide