我正在尝试将数组 ($sales) 保存到数据库中
Posted
技术标签:
【中文标题】我正在尝试将数组 ($sales) 保存到数据库中【英文标题】:I'm trying to save an array ($sales) into the database 【发布时间】:2013-11-28 16:30:32 【问题描述】:我正在尝试保存数组 $sales。
这里将数据放入这个数组中:
sales
0
Product
id146
category
descriptiondrei
created2013-11-20 14:10:12
modified2013-11-20 14:10:12
shop_id27
category_id1
image(null)
Shop
id27
user_id23
titlebarby
descriptionkleines
created2013-10-29 12:51:32
modified2013-10-29 12:51:32
Category
id1
imageHaushalt
Controller 中的方法如下所示:
公共函数 save_notepad()
$sales = array();
if($this -> Session -> valid() && $this -> Session -> check('notepad'))
$notepad = $this -> Session -> read('notepad');
$this->loadModel('Product');
$condition = array('Product.id' => $notepad);
$sales = $this -> Product-> find('all', array('conditions' => $condition));
$this -> set('sales', $sales);
if ($this->request->is('post'))
$this->Sale->create();
if ($this->Sale->saveall($sales));
$this->Session->setFlash(__('The sale has been saved'));
return $this->redirect(array('action' => 'index'));
问题是,当我保存时,在数据库中它只保存 id 和创建日期。
模型如下所示: 类销售扩展 AppModel
public $belongsTo = array(
'Product' => array(
'className' => 'Product',
'foreignKey' => 'product_id',
'conditions' => array('Product.id' => 'Sale.product_id'),
'fields' => '',
'order' => ''
),
'Shop' => array(
'className' => 'Shop',
'foreignKey' => 'shop_id',
'conditions' => '',
'fields' => '',
'order' => ''
));
我需要做些什么来保存数组 $sales 中已经存在的“product_id”和“shop_id”?
感谢您的帮助!
【问题讨论】:
【参考方案1】:将数组序列化为 xml 或 json 并作为单个字符串 blob 保存到数据库中。
【讨论】:
【参考方案2】:我找到了解决办法:
php echo $this->Form>input('product-id', array('type' => 'Text', 'value' => $sales['Product']['ID']));
它需要“类型”而不是“价值”。
【讨论】:
以上是关于我正在尝试将数组 ($sales) 保存到数据库中的主要内容,如果未能解决你的问题,请参考以下文章
我目前正在尝试通过将字符串重新定义为数字来将一组整数保存在 int 数组中,然后将其存储在数组中