Newbe question

Hello everybody,

I'm new to ROR and i'm building a test "job board" project just to see how far i wil come with ruby. i'm already familiar with the MVC model (currently using Zend Framework) and RESTfull webservices and i'm very exited about rails.

Everything works out fine with the "job board" app but i want to make the job search a little smarter. i want to create an search and filter on this page. Something like a tag system or just some keywords like salary, city, category..etc. but after the keyword i want to show the amount of jobs under this keyword and if a keyword is selected the amount of jobs for other keywords or tags has to bee recalculated with the given keywords.

How would you guys create such a system "the rails way" ? is there a good search plugin for this or do i have to take a closer look to ActiveRecord?

Thx in advance!

Greetings, Daniel

sine you need to learn and develope the system, i’m reccomend to do your self. then you will be expert on this. try your self and let us know if you stuck some whre. we will help you.

You're right...

I will figure out active record to make this happen.


Daniel, Please post some of your findings here when you find something. I would love to see it.


I think one of your key design decisions up front is who defines the tags/keywords?

If it is left up to the users to enter tags, then you might look into the has_many_polymorphs gem and the tagging facilities available there. This case makes it a tad more difficult to deal with searches, because your users can enter tags willy-nilly, and you have to come up with some method of classifying them, ideally dealing with synonyms and misspellings.

User-defined tags opens you up to some, er, inappropriate tags as well if your application is ever found out by the spam-spiders that crawl the web (a blacklist of tags to ignore would be your friend in this case I think).

If you are defining the keywords, it becomes much more manageable, and you can classify the tags you support according to types... salary ranges, experience levels, locations, whatever. I usually include something like a code table in my apps, where I can setup a codetype (string), codevalue (int), and codetext (string) where I could enter things like below that can be used in droplists for selection of attributes.

type, value, text: "salary", 1, "30-40k" "salary", 2, "40-50k" blah blah blah "experience", 1, "1-3 years" "experience", 2, "4-6 years" etc, etc

Thank you Ar Chron for your suggestion and for mr.whinnymann: i was just playing with rails and a job board app is a good project to figure out rails (or a blog / webshop). So i’m sorry that i can’t paste some code…

I started this disscusion because there are so many good plugins and i saw plugin’s like search_logic etc so i just wanted to know if there would be a great plugin that would help me with the job board project and i could figure it out how plugins work in rails etc.

currenly i’m trying to set up a connection to mysql witch just won’t work…and still reading tuts about rails and try them out. Have to say that i like rails so far.

Greets, Daniel