Hello Yii community,
I am new in here but certainly will last to Yii for long from what I have seen now
I am starting to create an application which is designed to manage data for companies selling mainly outdoor day trips (e.g. hikes, rafting etc). The application at the moment is a project purely for myself to get back into IT, as I studied computer science and did quite some PHP programming but stopped 8 years ago and joined the outdoor tour guiding business.
So now I want to get back into web programming using modern technologies like REST/AJAX and a modern framework which saves me a lot of work - that’s how I found Yii
Ok, so my project is building a data management website for outdoor tours. This means:
The application is a backend application only (some frontend for guides and partners could be provided later)
The views will show a lot forms to rapidly change the data
Any page will be accessible only to logged in admins
The 4 main data parts in my model at the moment are:
guides to guide the tours
groups in which people book the tours
guests belonging to these groups
Later on, online booking could be integrated, so that a code snippet is integrated into an existing website.
To give you an idea of what the application should do, I made uploaded 4 screen designs that show how the main data types could be managed. Please don’t look at the HTML/CSS code, its ugly, only meant to show the functionality.
As you can see, lots of forms.
There is quite some of m:n relations in there:
A Tour can have several groups, a group can belong to several tours
A group can have several guests, a guest can belong to several groups
A guide can have several tours, a tour can have serveral guides
Also, filtering/searching the lists, especially the tour list. In a real live company with around 700 tours a year and 5000 guests a year, this function is needed.
I hope you understand what this application is about. And I have some questions of course
- Do you think Yii is the best solution for this? Or can you think of an easier/quicker way to achieve this functionality?
A friend of mine suggested to have a look into Drupal, too. He said creating and managing data in there is very easy, too.
- There surely is some functionality I want already available in Yii and its modules. Some things I am particularly curious about:
managing the m:n relations
updating the data on the server the "modern" way (REST/AJAX)
updating the data viewed on the page after changing it without reloading the page (using REST/AJAX)
- I already started building a MYSQL database model based on the screen designs. I read the following article:
[not allowed to post links yet]/wiki/227/guidelines-for-good-schema-design/
It is for version 1.1. Same principles in version 2?
I would really appreciate if you could provide some thoughts, reccources I should read etc. I really want to do things the Yii way to learn how to use this framework correctly and thus use its benefits.