Try this: https://gist.github.com/2724995
I'm thinking something wasn't configured correctly. On Fri, May 18, 2012 at 3:54 AM, armanx <[email protected]> wrote: > Hello Jeremy, > > I tried following both examples (e.g. dataset_module do > and self.search_by_last_name), but get this error in both cases: > >> undefined method `with_last_initial' for MyApp::User:Module > > > What's could be the reason? > > On Tuesday, May 15, 2012 11:41:33 AM UTC-7, Jeremy Evans wrote: >> >> On Tuesday, May 15, 2012 9:23:07 AM UTC-7, Sean Redmond wrote: >>> >>> I'm new to Sequel and newish to Ruby (but coming with a lot of experience >>> in, say, Python) and I'm looking for Sequel tutorials or examples that don't >>> skip a lot of steps. Most of what I'm finding kind of jumps over everything >>> to the punch line and when I try to recreate the example I can't get it to >>> work. I'm trying to figure out things like: If I have a table with people's >>> names how to I extend Sequel::Model to add a method that will return all the >>> people whose last names begin with a specific letter. >> >> >> If you haven't read the documentation on >> http://sequel.rubyforge.org/documentation.html, I would start there first. >> Unfortunately, I don't think there is much in the way of tutorial >> documentation for Sequel. Most of it was written by me, and I'm not very >> good at looking at Sequel from the eyes of a new user. I certainly would be >> willing to help anyone who was interested in writing such documentation, and >> including such documentation with Sequel. >> >> To answer your specific question: >> >> class Person < Sequel::Model >> dataset_module do >> def with_last_initial(initial) >> where(:last_name.ilike("#{initial}%")).all >> end >> end >> end >> >> # usage >> Person.with_last_initial('E') >> >> Different things in play here: >> >> 1) Creating a model subclass for the table with the people's names. >> 2) Using Model.dataset_module which creates an anonymous module that the >> model's dataset is extended with >> 3) Using Dataset#where and Symbol#ilike to create a filter that limits the >> rows to the ones with the given last initial. >> 4) Using Dataset#all to return all of those rows. >> >> Feel free to ask questions here or join the #sequel channeel on Freenode >> IRC. >> >> Thanks, >> Jeremy > > -- > You received this message because you are subscribed to the Google Groups > "sequel-talk" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/sequel-talk/-/b3tuyRH1csUJ. > > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/sequel-talk?hl=en. -- —Silas -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sequel-talk?hl=en.
