开发者

Do I need an ORM for simple related queries in PHP/CI?

I started my app very simply following the documentation videos for Codeigniter.

I have the following tables:

Account
    account_id
    name
    details

Contact
    contact_id
    account_id
    name
    address

Order
    order_id
    account_id
    contact_id
    date
   开发者_如何学编程 description

Item
    item_id
    order_id
    description
    price

Relationships are as follows: 1 Account to many orders 1 Account to many contacts 1 Contact to many orders 1 Order to many items

Now when I'm trying to get the account name from a view that's only passed a query from an order table, the queries can get a bit cumbersome.

In saying that, the app is quite simple and there's not too many of these queries.

I just want to know what your opinions are on ORMs - do you think one is necessary for a simple app like this?


I'm not sure what constraints your framework places on your ability to write SQL, but no, you don't need an ORM.

SQL is a very simple language to write powerful queries in. For a simple application like you are talking about, all the more so.

With frameworks, MVC, ORM, ABC, FBI, etc... you can end up spending more time satisfying the framework dependencies than it saves you, ending up with a complicated mess, when the intent was to save time and simplify.

Don't forget how competent a set of UI scripts and a few static classes can be in PHP.


I would just stick with CodeIgniter's built in ActiveRecord. Any more abstraction between you are the database would be serious overkill for such simple data.


Codeigniter's Active Record is a good compromise: you don't need to map all your database schema to classes, but you get a convenient interface that takes care of some things for you. I think it's well suited for your situation.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜