[Nitro] Nitrous blog category and categories

George Moschovitis george.moschovitis at gmail.com
Mon Sep 10 04:10:33 EDT 2007


I more or less agree. I will use singular for controller mount points in my
projects, and (if there are no objections) I will change the default Nitro
examples as well.

thanks,
-g.

On 9/9/07, Robert Mela <rob at robmela.com> wrote:
>
> I read and understand what you've written.  Nitro is really good at
> working like I expect, and it's great that
>
> - Og uses singular for table names and directories
> - Router mount points are left to developer discretion in Nitro
> - Router mount point names are independent of table names
>
> Nitro in fact makes the consistency I'm suggesting possible.
>
> What I'm saying is that
>
> - I don't think that REST specifies use of plurals as REST controller
> nouns
> - Using plurals introduces inconsistencies all its own, and is more
> trouble than its worth
>
> It makes sense, if we think of a REST controller noun as opposed to an
> English noun, to use "comment" to list all comments.   It only looks
> funny at first due to our inability to think outside our European
> grammars.
>
> Even if one decides that morphology matters here, then the flip side is
> that "/comments/11" is a silly way to retrieve a single comment!   So do
> we have /comment/11 and /comments?
>
> It's rife with inconsistencies!   And it gets confusing when half the
> English speaking population doesn't know criteria / criterium,
> hypothesis / hypotheses,  and our zoo database needs elk/elk and
> deer/deer, and our sidewalk has passerby / passersby...
>
> It's weird, it's ugly, it doesn't match the table and class names... and
> I can't even see any official standards that say the controller noun
> needs to be plural.  If REST-mania had started in Japan there would be
> no such issue, as there's no morphological change to indicate plural!
>
> Nitro does a great job of breaking away from Rails on this -- it'd be
> wonderful to maintain that simplicity and consistency in REST on Nitro.
>
>
>
> George Moschovitis wrote:
> >
> >     I think the Rails convention of tablename := pluralized modelname is
> >     like so totally Yuck-O-la.
> >
> >
> > Hello Robert,
> >
> > Og uses singular for table names. And we use  singular for all
> > directories.
> >
> >          app.dispatcher.root.comments = Comment
> >          app.dispatcher.root.categories = Category
> >
> >
> > this has nothing to do with the database or the tables. A plural is
> > used here to provide standard REST urls:
> >
> > /comments -> lists the comments
> > /comments/view/1 -> view comment 1
> >
> > it makes not much sense to use /comment to list all comments. However,
> > since we use singular in all other places in Nitro/Og, for some time
> > now I am thinking to use singular even on controller mount points.
> > This is a personal decision though.
> >
> > The important thing is that Nitro/Og uses singular throughout, but
> > allows the  developer to override this (as is the case in the Blog
> > example: the developer (me) decided to use plural names as mount points)
> >
> >
> > regards,
> > George.
> >
> >
> >
> >
> >     I had to add a "to_link" method to the models to get the demo to
> run.
> >     In category.rb I added
> >
> >     class Category
> >       def to_link
> >           "<a href='/category/view/#{oid}'>#{title}</a>"
> >       end
> >
> >     ... but the dispatcher path is /categories/!  D'oh!
> >
> >     And in Rails we type "Category.find" to get many categories from a
> >     table
> >     full of categories....
> >
> >     The morphology of pluralization is an artifact of the European
> >     grammars
> >     burned into our brains.  Think of Japanese.   Would a Japanese
> >     programmer be at any disadvantage for the lack of pluralization in
> her
> >     table names?
> >
> >     Heck, case and gnarly verb conjugations are part of how we think.
> We
> >     don't add those to our programming conventions ( except in variable
> >     names ).   So why bother with plurals, when
> >
> >     1) the information it's intended to convey is already clear from
> >     context
> >     2) It's excess code
> >     3) It's complicated
> >       -- elk -> elk
> >       -- does it do latin?
> >       -- Is it available in Finnish
> >       -- what about the languages where it's a no-op?
> >     4) It introduces inconsistencies in usage ( Category.find -- looks
> >     in a
> >     group of many categories, may return many categories... etc.)
> >
> >     I bet the reason plurals are part of the convention is because...uh,
> >     because we can.  A few simple rules, and a dictionary for the
> >     exceptions....
> >
> >
> >
> >     _______________________________________________
> >     Nitro-general mailing list
> >     Nitro-general at rubyforge.org <mailto:Nitro-general at rubyforge.org>
> >     http://rubyforge.org/mailman/listinfo/nitro-general
> >     <http://rubyforge.org/mailman/listinfo/nitro-general>
> >
> >
> >
> >
> > --
> > http://www.me.gr
> > http://phidz.com
> > http://blog.gmosx.com
> > http://cull.gr
> > http://www.joy.gr
> > http://nitroproject.org
>
>
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general
>
>


-- 
http://www.me.gr
http://phidz.com
http://blog.gmosx.com
http://cull.gr
http://www.joy.gr
http://nitroproject.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/nitro-general/attachments/20070910/16ea5c36/attachment.html 


More information about the Nitro-general mailing list