My first multi-search page in Django

My first multi-search page in Django

Recently I'm dedicated to a lot of grunt work. I'm trying to get more experience and get ready to apply for a job in the programming world. Even though I do this for almost a year now I'm still convinced there is a lot to be done before I can apply for a junior position.

To get better I constantly try to new things. Few weeks ago I started Hravard course "Introduction to IA in Python" and I was very excited. I must say, the first excercise smashed me completely! I mean, I was sure I know how to do this but for some reason it still doesn't work. But hey, that's a programmist life, right? Most of the time it's just staring onto the code wondering what the heck is wrong with it. So even though I did not finish the first task yet, I'm trying every day to find that error in my code.

Part of my "getting better" process is finding new ideas for some test application and bringing them to life. My newest project is "RelaxHere", app where you can find a perfect place to go for some vacation. This project is meant to teach me how to create a search page that can use mulitple entries and multiple models in one view. In my last application that I partially described in my previous post I made a search page for the first time, which I'm quite proud of. Now it is time to explore this topic further.

The multiple models search page is supposed to filter throguh couple of models connected with each other:

class Place(models.Model):
    name = models.CharField(max_length=255)
    visit_from = models.DateField(blank=True)
    visit_to = models.DateField(blank=True)
    climate = models.ForeignKey(Activities, on_delete=models.SET_NULL, null=True)
    activities = models.ForeignKey(Climate, on_delete=models.SET_NULL, null=True)
    children_friendly = models.ForeignKey(ChildrenActivities, on_delete=models.SET_NULL, null=True)
    scenery = models.ForeignKey(Scenery, on_delete=models.SET_NULL, null=True)
    continent = models.ForeignKey(Continent, on_delete=models.SET_NULL, null=True)
    long_stay = models.CharField(max_length=255)
    short_stay = models.CharField(max_length=255)

The initial setting of the main model is shown below. The main idea is to allow user to choose which factor or factors is important for him while planning the vacation. The app will show him proposed places, along with the recommended length of stay.

RelaxHere will show name of the place (along with the pictures), climate for the chosen set of dates, recommended activities, scenery type and recommended length of stay. User will also be able to check wether what children-friendly activities are offered there.

For the future task I leave adding locations and aotomatically counting them, which will allow users to filter only through the chosen area. I believe this little excercies will show me more of Django powers and prepare me even better to join the main stage on the job market.

We'll see how this goes!