小编Por*_*ear的帖子

Doctrine OneToOne不正确?生成一个独特的索引

SchemaTool为OneToOne的关联生成唯一索引.我认为这是不正确的.

Doctrine的"关联"手册页的第6.6节显示了一个产品的OneToOne有一个送货的示例.这显示为生成Product表:

CREATE TABLE Product (
    id INT AUTO_INCREMENT NOT NULL,
    shipping_id INT DEFAULT NULL,
    PRIMARY KEY(id)
) ENGINE = InnoDB;
Run Code Online (Sandbox Code Playgroud)

但是,对于我的实体使用相同的代码,用户有一个组织,我的用户表SQL生成为

CREATE TABLE User (
    id INT AUTO_INCREMENT NOT NULL,
    organisation_id INT DEFAULT NULL,
    UNIQ_3B978F9FA7F43455 (organisation_id),
    PRIMARY KEY(id)
) ENGINE = InnoDB;
Run Code Online (Sandbox Code Playgroud)

这可以防止我添加2个具有相同组织的用户.不正确.

我添加了尝试使用唯一的JoinColumn注释参数的详细信息.

@JoinColumn(name="organisation_id", referencedColumnName="id", unique="false")
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我似乎无法找到任何关于此的内容.

谢谢

symfony doctrine-orm

32
推荐指数
1
解决办法
1万
查看次数

TypeError:当使用Heroku node.js调用pg.connect时,无法调用null的方法'query'

我遇到一个问题,通过Node.js连接到Heroku postgres数据库.我找到了另一个遇到此问题的人的例子,但他们的建议在我的案例中不起作用.

我将var DB_URL定义为Heroku存储的完整Postgres数据库URL.我这样做是因为没有定义process.env.DATABASE_URL.(这是其他堆栈溢出帖子的建议).

尝试连接的代码是:

pg.connect(DB_URL, function(err, client) {
    client.query( ... )
Run Code Online (Sandbox Code Playgroud)

当领班工作时:

client.query('INSERT INTO bookmarks (username, title, image, url) VALUES (       
^
TypeError: Cannot call method 'query' of null
Run Code Online (Sandbox Code Playgroud)

where by null指的是要传递给pg.connect匿名函数的客户端对象.

建议赞赏,我在Heroku文档和Googled-a-lots周围看起来高低无济于事.

postgresql heroku node.js

10
推荐指数
2
解决办法
3052
查看次数

Doctrine/Symfony2 OneToMany将foreign_id保存为NULL

我有从Assembly到ComponentSlot的关系.这是OneToMany的关系.

// Assembly

/**
 * @ORM\OneToMany(targetEntity="ComponentSlot", mappedBy="assembly", cascade={"persist"})
 * @Assert\Valid
 */
protected $componentSlots;

// ComponentSlot

/**
 * @ORM\ManyToOne(targetEntity="Assembly", inversedBy="componentSlots")
 */
protected $assembly;
Run Code Online (Sandbox Code Playgroud)

这在数据库中生成的模式绝对没问题.纠正列,正确的索引和关系.

Symfony2表单AssemblyType具有ComponentSlotType的集合.我可以添加多个ComponentSlot子项.在持久化时,除了组件槽表中的assembly_id为NULL之外,Assembly和ComponentSlot子项都保存得非常好.

我已经复制了我之前在保存关系的项目上的设置,我完全被难倒了.级联持久化是在Assembly的componentSlots字段中设置的,我之前使用OneToMany的经验是我不需要在这里做任何特殊的事情,应该注意它.

任何指针将不胜感激:)

symfony doctrine-orm

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

在Swift中扩展SCNNode

我想在Swift中扩展SCNNode(如果可能的话).这是我的尝试:

class MyNode : SCNNode {

    override init(geometry: SCNGeometry) -> SCNNode {
        return super.init(geometry)
    }

    /* Xcode required this */
    required init(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}
Run Code Online (Sandbox Code Playgroud)

- >运算符被标记为错误"行上的连续声明必须用;分隔".

我知道这不对,但如果我幽默Xcode,它会"修复"它如下:

override init(geometry: SCNGeometry); -> SCNNode {
Run Code Online (Sandbox Code Playgroud)

这是胡说八道然后Xcode抱怨"预期声明".

我不太了解SCNNode实现 - 如果我在Xcode中查看它,它们都被声明为抽象(在注释中)并且不提供实现.文档没有建议从SCNNode扩展,你直接实例化它,所以我假设我应该能够扩展它.

scenekit swift

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

自定义AuthenticationHandler没有正确实现接口 - 为什么?

这个问题涉及到

如何在Symfony 2中的login_check之后禁用重定向

我已经完全实现了在该链接上给出的解决方案,但是我收到了一个我通常理解的错误但是在这种情况下没有.我的课程绝对完美地实现了界面(我认为).

致命错误:Foo\AppBundle\Handler\AuthenticationHandler :: onAuthenticationSuccess()的声明必须与/ Users/Me/Sites/github/Foo中Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface :: onAuthenticationSuccess()的声明兼容第6行/Symfony/src/Foo/AppBundle/Handler/AuthenticationHandler.php

class AuthenticationHandler implements
\Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface,
\Symfony\Component\Security\Http\Authentication\AuthenticationFailureHandlerInterface
{
    function onAuthenticationSuccess(Request $request, TokenInterface $token) {
        return new Response();
    }

    function onAuthenticationFailure(Request $request, AuthenticationException $exception) {
        return new Response();
    }
}
Run Code Online (Sandbox Code Playgroud)

建议赞赏!

symfony

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

标签 统计

symfony ×3

doctrine-orm ×2

heroku ×1

node.js ×1

postgresql ×1

scenekit ×1

swift ×1