My basic plan was to create a listing in the database as a data type.
I would also create “options” or “facilities” as a database data type.
The listing would have a data field of “options” or “facilities” as a list.
There would also be a data type of neighborhoods.
Each listing would have a single item data field of neighborhood or property type.
Essentially each listing would have some lists as data fields which correspond to data types ( ie: facilities ) as well as single item data fields that correspond to data types ( ie: property type or neighborhood ).
On the search page the user could select multiple single item data fields and display all results that have those single item data fields. ( ie: select hotel, hostel and condo and see all results for those three ).
As well the user could select multiple list item data fields and display all results that have those items in their list data field. ( ie: select bar, hiking, evening entertainment and see only results that have all three of those “facilities” in their list. )
Also the user could select to sort the results by price or review score etc.
I’d like them to be able to make these choices in any order and have the results update automatically displaying results that meet all the currently selected “options”. As the user selects more “options” the results update automatically and has they deselect “options” the results update automatically.
One concern when reading this though is about the facilities. One property would have multiple facilities. So for example one property has a pool, a fitness room and a bar.
If the state is set to ALL the Facilities when none is selected, then that would mean for a property to be displayed the property would need to have all of the facilities in their list of facilities data field? So, the property with the pool, a fitness room and a bar would not be displayed as it only has 3 of the facilities out of the 200 possible?
I just had a look at the site. When doing a search and adding the Facilities, the opposite of what should happen is occurring. Instead of showing less properties as I add facilities, it is showing more properties.
What I’d like is if I select Hiking and Bikes Available for Free, then only properties that have both available will be displayed. What is happening now is that all properties that have any of the selected Facilities are displayed.
Not answering your specific question, but if you will be very interested in this thread and my conversations with @luke2 and the video that I did explaining a better approach to how one might handle “facilities”…
Thanks for the post. I actually had read that thread and watched your video a couple weeks ago and found it extremely helpful. Fully impressed with the immersive tutorial you put together on the topic.
After watching the video I was able to put together a pretty spiffy (not design but functionality) admin page for adding and removing amenities using auto binding and a custom radio button (couldn’t figure the installed radio button functionality).
It seems like you have done a listing site before. How did you get over the search results display hurdle?
Right now my struggle is that I have two basic types of data fields that I want my results to be filtered by. I have a data type of Listings. I have a data field of property type (each Listing will have only one property type) and another data field of amenities, which is a list (each Listing will have multiple amenities in it’s list).
Have you successfully put together a search results display that would allow a user to search in a variety of ways?
I was thinking about following Nigel’s idea from another post where he mentioned having an author’s name as a data type with a data field of book’s name, as well as a data type of book’s name with a data field of author’s name.
I’m thinking about attaching to the Facilities Data Type a data field as a list of Listings. Currently I only have a Data Type of Listings with a data field as a list of Facilities. I think this might give me more controls and options for how to search. Should be quick to implement as it would only be a couple of added events in the workflows on my admin pages.