Domain Model Changes

3 views
Skip to first unread message

Scott Willson

unread,
Apr 23, 2009, 3:47:03 PM4/23/09
to racing-...@googlegroups.com
This is a long email crammed with detail. Easy for you to delete with one click if it's too much Racing on Rails in one day.

Goodbye Standings
I've made some major changes to the domain model/data model. It's in SVN trunk, for the programmers among you:

Right now, each event with results requires an Event, Standings, Races, and (finally) Results. I've removed Standings, so Events can now just have Races and Results. Back in 2005, it felt like we needed a something between Event and Race, but in practice it's pointless to require a Standings for each Event. And the Event and Standings classes turn out to be almost identical.

There's less code behind Results and Events now, and it's easier to understand. Perhaps pictures make it clearer: http://trac.butlerpress.com/racing_on_rails/wiki/DomainModel The takeaway: fewer boxes is good!

Standings have been useful for track events like the Alpenrose Challenge, and for pulling out results for a specific category. For example: to pull out the Cat 3 women from a 1/2/3 women's race. In those cases, we'll use a child Event now.

Thoughts? Questions?

UTF-8: Another Big Backend Change
Currently, the application and database use default Latin-1 encoding, which does odd things with names like Gründelbrüisers. There's a migration in trunk to move everything over to UTF-8/Unicode after I reconfigure the production databases.

New Features
Ryan Rickerts has added a synch with USA Cycling, so USAC member associations can automatically pull USAC members' contact information.

We've add basic CMS editing, so that pages can be edited via a web interface, and no longer require a commit to source control and a server restart. Man, what took us so long? You can add and edit new, static pages. You can also edit the dynamic pages. If you're not already using this feature, I can walk you through the details. It's available at <your server>/admin/pages

We've improved the way the results pages look, and fixed a few errors. The code behind it better, too.

Fixes
The "create parent event from children" link actually works now. Team editing works again. We now guard against a bad Ironman URL that would lock up server. Ensure Cat 3 women are counted for the Oregon Cup.

Thanks everyone for your contributions and patience! I appreciate it.

Scott


Reply all
Reply to author
Forward
0 new messages