当前位置: 动力学知识库 > 问答 > 编程问答 >

RedBean (ORM) Get Bean with his relations like other Bean

问题描述:

I'm storing a product Bean, by this way:

$product = R::dispense( 'product' );

$product->name = $_POST['name'];

$product->description = $_POST['description'];

$product->price = $_POST['price'];

$product->category = $_POST['category'];

R::store( $product );

How can I indicate that the category's attribute is an id reference (or

FK) to the category Bean? I want get the category Bean like this way:

$products = R::find( 'product' );

foreach( $products as $product )

$productCategory = $product->category->name;

网友答案:

The way I would do it is this IF you don't have the database table already configured:

$product = R::dispense( 'product' ); 
$product->name = $_POST['name']; 
$product->description = $_POST['description']; 
$product->price = $_POST['price']; 
$product->category = R::load('category',$_POST['category']); 
R::store( $product );

BUT I believe if your database has a foreign index assigned for category and it points to the category table, then you can do what you did above. So on your product table, have a column category_id and make it a foreign index to category.id and it should work. I can test it later and give you a more definitive answer, but this is just going off of what I know offhand.

分享给朋友:
您可能感兴趣的文章:
随机阅读: