小编Wil*_*del的帖子

检索数据时"无法将值转换为字符串"(belongsToMany关系)

我正在使用CakePHP 3.3.6和MySQL 5.7.13.

我的数据库(以及其他)中有这三个表:集合,标签和连接表collections_tags.

集合表

CREATE TABLE IF NOT EXISTS `database`.`collections` (
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(45) NOT NULL,
  `event_date` DATE NOT NULL,
  `url_slug` VARCHAR(45) NOT NULL,
  `status` TINYINT(1) NOT NULL DEFAULT 0,
  `user_id` INT UNSIGNED NOT NULL,
  `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`, `user_id`),
  INDEX `fk_collections_users1_idx` (`user_id` ASC),
  CONSTRAINT `fk_collections_users1`
    FOREIGN KEY (`user_id`)
    REFERENCES `database`.`users` (`id`)
    ON DELETE …
Run Code Online (Sandbox Code Playgroud)

php mysql cakephp cakephp-3.x cakephp-3.3

7
推荐指数
1
解决办法
4863
查看次数

CakePHP 2.6.7 hasMany数据未保存

我正在使用CakePHP 2.6.7.

用户将能够将多个汽车和多个地址添加到他的个人资料中.他还可以将多个地址链接到一辆车,并将一个地址链接到多辆车.

然后,我有一个用户模型:

class User extends AppModel {
    public $hasMany = array(
        'Car',
        'Address'
    );
}
Run Code Online (Sandbox Code Playgroud)

汽车模型:

class Car extends AppModel {
    public $belongsTo = array(
        'User'
    );

    public $hasAndBelongsToMany = array(
        'Address' =>
            array(
                'unique' => 'keepExisting'
            )
    );
}
Run Code Online (Sandbox Code Playgroud)

一个地址模型:

class Address extends AppModel {
    public $hasAndBelongsToMany = array(
        'Car' =>
            array(
                'unique' => 'keepExisting',
            ),
    );

    public $belongsTo = array(
        'User'
    );
}
Run Code Online (Sandbox Code Playgroud)

我有一个表单,以便用户可以编辑他的汽车(目前只有一个):

[...]

        <legend>Mes voitures</legend>

        <?php
            for($nbrvoiture = 0; $nbrvoiture <= 0; $nbrvoiture++)
            { …
Run Code Online (Sandbox Code Playgroud)

php cakephp web cakephp-2.6

6
推荐指数
1
解决办法
233
查看次数

该表单在构造过程中从默认实例引用自身,这导致无限递归

我目前正在尝试使用带有图形用户界面的 QuickFix 创建一个简单的客户端(启动器)。我正在使用 Visual Studio 2012 并在 VB.Net 中进行编程。

这是我的问题:当我启动应用程序时,出现此错误:“WindowsApplication1.exe 中发生了类型为‘System.InvalidOperationException’的未处理异常

附加信息:创建表单时出错。有关详细信息,请参阅 Exception.InnerException。错误是:表单在构造过程中从默认实例引用自身,这导致无限递归。在表单的构造函数中,使用“Me”引用表单。”

我的项目中有两个文件,分别是 Client GUI.vb ( http://pastebin.com/virgVNyS ) 和 MyQuickFixApp.vb ( http://pastebin.com/tQ1GXNSx )。第二个包含将 IApplication 与所有子组件集成的类。

当它从 Client GUI.vb 执行以下行:“Dim initiator As New SocketInitiator(myApp, storeFactory, settings, logFactory)”时,会发生错误,但软件会突出显示文件 Application.Designer.vb 中的一行:

Protected Overrides Sub OnCreateMainForm()
    Me.MainForm = Global.WindowsApplication1.ClientGUI
End Sub
Run Code Online (Sandbox Code Playgroud)

你能帮助我并告诉我出了什么问题吗?

非常感谢 !

vb.net recursion

4
推荐指数
1
解决办法
5781
查看次数

无法在CakePHP应用程序中存储01/01/1600之前的日期

我有一张非常简单的桌子.

Evenementshistoriques表

我生成了文件

bin\cake bake all [tableName]
Run Code Online (Sandbox Code Playgroud)

我现在有一个表单,我可以添加/编辑/删除条目.

形成

问题是,如果我在1600年1月1日之前提出日期,我会收到错误消息,说明日期无效.

错误

我假设错误来自验证器.

以下是验证规则:

 /**
 * Default validation rules.
 *
 * @param \Cake\Validation\Validator $validator Validator instance.
 * @return \Cake\Validation\Validator
 */
public function validationDefault(Validator $validator)
{
    $validator
        ->integer('id')
        ->allowEmpty('id', 'create');

    $validator
        ->date('debut_date')
        ->allowEmpty('debut_date');

    $validator
        ->date('fin_date')
        ->allowEmpty('fin_date');

    $validator
        ->allowEmpty('nom');

    $validator
        ->allowEmpty('description');

    return $validator;
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么会发生这种错误.请问你能帮帮我吗?

谢谢

php mysql cakephp date cakephp-3.0

4
推荐指数
1
解决办法
90
查看次数