小编Pac*_*ac0的帖子

(doctrine2 + symfony2)级联删除:完整性约束违规1451

首先,抱歉我的英语不好......

我有四个实体:用户,应用程序,捆绑和实体.以下是他们的关系(级联持续和删除,请参阅下面的代码):

  • 用户1-n申请
  • 应用1-n捆绑
  • 捆绑1-n实体

它工作正常.但是用户可以将他的两个实体作为默认实体,我需要直接访问它们.

所以我添加用户两个字段,entity1和entity2,具有1-1关系.现在我的应用程序崩溃了:

An exception occurred while executing 'DELETE FROM bundle WHERE id = ?' with params {"1":13}:

SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`misc`.`entity`, CONSTRAINT `FK_E284468F1FAD9D3` FOREIGN KEY (`bundle_id`) REFERENCES `bundle` (`id`))
Run Code Online (Sandbox Code Playgroud)

我尝试了几件事,包括在这篇文章中创建的那些,但我无法解决它.

欢迎提出任何帮助,谢谢.

编辑:我需要指出User-> Entity关系是optionnal:User的entity1和entity2可以为null.即使它们都为空,也会发生错误.

这是我的实体定义:

# User :
    /**
     * @ORM\OneToMany(targetEntity="\sfCommands\ContentBundle\Entity\Application", mappedBy="user", cascade={"remove"}, orphanRemoval=true)
     * @ORM\OrderBy({"name" = "ASC"})
     */
    protected $applications; …
Run Code Online (Sandbox Code Playgroud)

referential-integrity cascading symfony doctrine-orm

14
推荐指数
2
解决办法
4万
查看次数

C#8 nullable : string.IsNullOrEmpty 不被编译器理解为有助于防范 null

我在 .NET 框架 4.8 中使用 C# 8

我目前正在防范可能为 null 的潜在字符串IsNullOrWhitespace(与IsNullOrEmpty)相同,但编译器仍在抱怨:

public MyImage? LoadImage(string? filename)
{
    if (string.IsNullOrWhiteSpace(filename))
    {
        return null;
    }
    return OtherMethod(filename); // here : warning from Visual Studio
}

// signature of other method :
public MyImage OtherMethod(string filepath);
Run Code Online (Sandbox Code Playgroud)

来自 VS 的提示/警告:此处的“文件名”可能为空。

目前,我有一些解决方法可以让编译器理解:

  • 使用空原谅运算符 filename!
  • 使用禁用警告 #pragma warning disable CS8604 // Possible null reference argument.
  • 添加另一个空检查 if(string == null || string.IsNullOrWhitespace(filename))

但似乎没有一个令人满意,主要是因为我需要为每次调用IsNullOrEmpty.

有没有其他方法可以告诉编译器 IsNullOrEmpty 有效地防止 null ?

string c#-8.0 nullable-reference-types

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

是否有 Word .docx XML 标签的词汇表?

我正在尝试创建一个解析器来查找 Word.docx文件的跟踪更改和作者...

我找到了,document.xml但是标签太多了!所有这些标签所代表的含义是否有词汇表?

如果可能的话,我想避免强行通过这种方式。

xml glossary docx

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

无法在TypeScript中重新声明块范围变量'name'

嗨,我正在学习打字稿.

我的代码中有.

var name:string="Hello world";
console.log(name);
Run Code Online (Sandbox Code Playgroud)

在编译时,我收到此错误.

error TS2451: Cannot redeclare block-scoped variable 'name'.
index.ts(4,5): error TS2451: Cannot redeclare block-scoped variable 'name'.
Run Code Online (Sandbox Code Playgroud)

有人能形容我为什么会收到这个错误吗?

typescript

12
推荐指数
2
解决办法
6716
查看次数

如何使用数字反转字符串,但不要反转1和0?

我正在学习随机算法,我目前在一个库存中,我必须反转包含数字的字符串,但我不会在字符串中反转1和0,例如,2345678910将是1098765432.

这是我到目前为止所做的:

function split(str) {
  let temp = [];
  temp = str.split('');
  const backwards = [];
  const totalItems = str.length - 1;
  for (let i = totalItems; i >= 0; i--) {
    backwards.push(temp[i]);

  }
  return backwards.join('').toString();

}
console.log(split("10 2 3 U S A"));
console.log(split("2345678910"));
Run Code Online (Sandbox Code Playgroud)

我目前的问题是没有扭转10.

我究竟做错了什么?

javascript algorithm

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

Morgan(node.js):使用自定义格式时着色状态代码(如'dev')

我正在使用morgan登录node.js.

我喜欢预定义格式模式'dev'中提供的状态代码着色,但我使用的是自定义格式.

如何在"开发"模式下获得相同的颜色?

根据摩根文档,dev格式如下:

 :method :url :status :response-time ms - :res[content-length]
Run Code Online (Sandbox Code Playgroud)

当我使用它时它没有颜色:

// does not color
app.use(morgan(':method :url :status :response-time ms - :res[content-length]')); 
Run Code Online (Sandbox Code Playgroud)

但是当我使用预定义的'dev'时它会变色!

app.use(morgan('dev'));
Run Code Online (Sandbox Code Playgroud)

logging node.js

11
推荐指数
4
解决办法
3193
查看次数

是否可以在javascript中检查null内联?

我有一个函数可以解析Google Maps API的地址组件, JSON然后返回城市/地区/路线名称.

getAddressComponent()回报null,如果它不能找到问题的关键.

let route = getAddressComponent(addressComponents, 'route').value.long_name;

所以,让我们说它没有找到密钥,然后我Error: TypeError: Cannot read property 'long_name' of undefined明显得到了一个,因为它没有定义.

如何null在条件方法以外的javascript中检查(a === null)

我怎么能这样简单地检查一下 ?

编辑:安全导航操作员

let route = getAddressComponent(addressComponents, 'route')?.value.long_name;

如果它不存在,它可能设置routenull而不是抛出错误?

javascript null

11
推荐指数
4
解决办法
2万
查看次数

如果我的Object大于.Net中的Gen 0大小会发生什么?

在采访中,面试官问我以下内容:

假设Gen 0的大小为5 kb,我创建的对象大小为20 kb,会发生什么?

我回答说CLR将扩展Gen 0区域.

现在我很困惑这是否是正确的答案.

这是对的吗?

.net c#

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

1到100亿之间有多少数字包含14

我尝试了这段代码,但需要很长时间,我无法得到结果

    public long getCounter([FromBody]object req)
    {
        JObject param = Utility.GetRequestParameter(req);
        long input = long.Parse(param["input"].ToString());
        long counter = 0;
        for (long i = 14; i <= input; i++)
        {
            string s = i.ToString();
            if (s.Contains("14"))
            {
                counter += 1;
            }
        }
        return counter;
    }
Run Code Online (Sandbox Code Playgroud)

请帮忙

c# api algorithm counter

8
推荐指数
3
解决办法
431
查看次数

bash/usr/bin/ng:Angular中没有这样的文件或目录

当我运行我的Angular项目时ng serve,它会出现以下错误:

bash:/ usr/bin/ng:没有这样的文件或目录

我跑了 npm install -g @angular/cli

angular

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