Michael Bremerkamp Michael Bremerkamp - 1 year ago 51
MySQL Question

How to create a business side inventory manager

I am creating my first website for a friend using python, flask, and mysql. The goal of the website is to display and sell shoes (like a much simpler/smaller eastbay or nike).

I am at the point where I have created a database of inventory and have added some of the items myself via INSERT commands in the mysql command line. I am new to web development and am wondering what the best way to handle inventory changes would be. For example, my friend would be managing the site's inventory. However, he is not a computer science guy so using mysql is out of the question. I considered creating a tab on the site that only he (admin?) can access. This tab would contain a form that he could easily fill out and when submitted, would add the new item's info to the database.

Is there an easier/better way to do this? I am not familiar with the standard approach for web inventory management. I am also wondering if there is an easy way for him to delete/edit existing inventory items without him having to learn mysql.

Again, I am new so please excuse the lack of knowledge. Any direction would be appreciated, thanks

Answer Source

Basically, you're going to need to create an admin interface that runs those INSERT, UPDATE, and DELETE queries. With Flask, a lot of people will reach for sqlalchemy to handle the data access layer.

If you're not completely sold on Flask, one of Django's major selling points is that you get a basic admin interface for your models, for 'free'. Django is more of an opinionated framework, which may be better if you're just starting out and want to get up and running quickly. Flask is more open-ended, but will also require more from you, both in time and knowledge. I'd highly recommend looking at the Django tutorial, because even if you don't stick with Django it'll give you a good idea of Model-View-Controller (MVC) pattern―which is one of the most common design patterns in web development. Just my 2¢.