2

或者我们可以这样做吗?当你说:

$book = R::dispense('books');

只需使用 RedBean_IModelFormatter 处理命名还是我遗漏了什么?谢谢。

4

1 回答 1

3

你可以这样做,但它会变得混乱并且看起来不太好。标准约定是非复数表名,以便在分发书籍和存储书籍以及关系映射时更有意义。想象一下,如果您将执行以下操作:

$book=R::dispense('books');
$book->title='War and Peace';
$pageOne=R::dispense('pages');
$pageOne->number=1;
$pageTwo=R::dispense('pages');
$pageTwo->number=2;
$book->ownPages=array($pageOne,$pageTwo);
R::store($book);

看起来不错。现在假设我们加载一个页面并去获取相关的书:

$page=R::load('pages',1);
echo $page->books->title;

这没有多大意义,也不太适合 RedBean 所追求的。同样,你可以做到。如果您已经设置了数据库,则可能不想进行这些更改。同样,这完全取决于您的决定以及您要完成的工作。如果只有你,那就随便吧。如果您在一个小组中工作,重命名表格可能更有意义,以便您的工作更清晰。

于 2012-12-08T16:22:57.050 回答