I have been asked to write front-end for an accounting system that
would
allow customers to view their bill and pay online, reconcile their bill,
add/delete people that they are paying for etc. The database that I need
to
use is already in existence and is SQL Server 2008; has anyone had
experience doing this sort of project? I would be interested to know how
you
proceeded. I am using a Mac and most everything I have read is that I
should
be developing this on a windows box and on the same machine as the
database
which doesn’t make much sense.
I am trying to figure out the best way to get started but seem to be
having
a mental block.
I am trying to figure out the best way to get started but seem to be having
a mental block.
Any help would be greatly appreciated.
Thanks
Steve
Hi Steve,
Rails apps can definitely talk to SQL Server 2008, and you can develop
the Rails app on our mac like normal. You can probably use sqlite in
development mode, and use sql server in production, but there are a
few things to keep in mind:
You’ll need to get the SQL Server activerecord adapter, and
reference it from your database.yml
SQL Server won’t run on a Mac, so you’ll need to somehow access an
instance of sql server to test with. If they can give you the full
DSN string to their server (hopefully a testing server), you’ll be all
set.
If you’re expected to follow non-Rails standards for table/column
naming conventions, you’ll have to just make sure you tell your model
classes about it.
Here’s a good post about setting up your database.yml for sql server:
Rails apps can definitely talk to SQL Server 2008, and you can develop
the Rails app on our mac like normal. You can probably use sqlite in
development mode, and use sql server in production, but there are a
few things to keep in mind:
All good stuff, and let me add one thing, based on my experience with
an app that’s primarily developed on MRI/MySQL and deployed on a
JRuby/Oracle platform – write tests like there’s no tomorrow
You will almost certainly find cases where the adapters for those two
respective DBs behave differently; good tests will help you determine
whether it’s an adapter bug or a logic bug in your app.