小编Aut*_*ico的帖子

ICollection 上的 MinLength 约束失败,实体框架

这是我拥有的数据模型:

public class Team
{
    [Key]
    public int Id { get; set;} 
    [Required]
    public string Name { get; set; }

    [MinLength(1)]
    public virtual ICollection<User> Users { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,当我稍后尝试创建一个新团队(有一个用户)时,我在保存上下文时遇到以下问题。

调用 System.ComponentModel.DataAnnotations.MinLengthAttribute.IsValid 时,在验证“用户”期间抛出意外异常。有关详细信息,请参阅内部异常。

内部异常如下:

{“无法将“System.Collections.Generic.List`1[MyNameSpace.Model.User]”类型的对象转换为“System.Array”。”}

这是实际保存的代码(现在在控制器中):

        if (ModelState.IsValid)
        {
            team.Users = new List<User>();
            team.Users.Add(CurrentUser);//CurrentUser is a property that gives me the currently active User (MyNamespace.Model.User).
            DB.Teams.Add(team);//DB is a DbContext object that holds DbSets of all my models
            DB.SaveChanges();
            return RedirectToAction("Index");
        }
Run Code Online (Sandbox Code Playgroud)

那么,这里发生了什么?我做错了什么,还是发生了其他事情?

casting icollection asp.net-mvc-4 entity-framework-4.3

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

翡翠问题,意外特征#

我一直在: .../views/index.jade:20 18| alert(error) 19| }) > 20| server.on('warning',function(warning){ 21| alert(warning) 22| }) 23| var num = -1 Unexpected character # expected ' ', '\n', ',', '!' or '='

这是我的玉文件:

extends layout


block content
    #splash(style='z-index: 3120; position: absolute; left:0; top:0; width:100%; min-height:100%; background-color:#444;')
        img(src="/stylesheets/some.png", style='display:block; margin-left: auto; margin-right: auto; margin-top:10%;')
    div.row
        #welcome
        div.row
            #joined.small-6.columns
            #finished.small-6.columns
    script
        $(document).ready(function(){
        var server = io.connect()
        $.fn.exists = function(){return this.length>0}
        var userName = "none"
        server.on('error',function(error){
            alert(error)
        })
        server.on('warning',function(warning){
            alert(warning)
        })
        var num = -1
        server.on('welcome', …
Run Code Online (Sandbox Code Playgroud)

javascript syntax node.js pug

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

pytest:使用假设时的monkeypatch

在单元测试中,我使用monkeypatch来更改dict.

from hypothesis import given, strategies
    
    
test_dict = {"first": "text1", "second": "text2"}
    
    
given(val=strategies.text())
def test_monkeypath(monkeypatch, val):
    monkeypatch.setitem(test_dict, "second", val)
    
    assert isinstance(test_dict["second"], str)
Run Code Online (Sandbox Code Playgroud)

测试通过了,但在使用 执行以下测试代码时收到警告pytest

=================================================================================================================== warnings summary ====================================================================================================================
.PyCharm2019.2/config/scratches/hypothesis_monkeypatch.py::test_monkeypath
  c:\users\d292498\appdata\local\conda\conda\envs\pybt\lib\site-packages\hypothesis\extra\pytestplugin.py:172: HypothesisDeprecationWarning: .PyCharm2019.2/config/scratches/hypothesis_monkeypatch.py::test_monkeypath uses the 'monkeypatch' fixture, wh
ich is reset between function calls but not between test cases generated by `@given(...)`.  You can change it to a module- or session-scoped fixture if it is safe to reuse; if not we recommend using a context …
Run Code Online (Sandbox Code Playgroud)

monkeypatching pytest hypothesis-test python-hypothesis

3
推荐指数
2
解决办法
1288
查看次数

Rails 3仅选择值

在rails 3中,我想做以下事情:

SomeModel.where(:some_connection_id => anArrayOfIds).select("some_other_connection_id")
Run Code Online (Sandbox Code Playgroud)

这有效,但我从DB获得以下内容:

[{"some_other_connection_id":254},{"some_other_connection_id":315}]
Run Code Online (Sandbox Code Playgroud)

现在,那些id-s是我需要的,但我无法做出给我ID 的查询.我不想对结果进行迭代,只是为了得到那些数字.有什么方法可以让我这样做:

SomeModel.where(:some_connection_id => anArrayOfIds).select("some_other_connection_id").values()
Run Code Online (Sandbox Code Playgroud)

还是那个nautre的东西?

我一直在尝试使用Git-hub中的".select_values()" ,但它只返回"some_other_connection_id".

我不是rails的专家,所以这些信息也可能有用:

"SomeModel"是一个连接表,用于我的其他模型中的多对多关系.所以,我想要做的就是从ID数组中获取连接另一端的所有条目.基本上我有源ID,我想从模型中获取所有目标ID的数据.如果有一种神奇的方式来获取这些,而我不必自己做所有的sql(在活动记录的帮助下),这将是非常好的!

谢谢 :)

activerecord ruby-on-rails-3

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

Rmagick each_pixel,它是如何工作的?

我需要在rmagick中操纵图像的每个像素.我在IRB(互动红宝石)中这样做这就是我所拥有的:

require 'Rmagick'
include Magick
f = Image.new(100,100)
f.display #so far so good. A 100x100 white image is displayed

f.each_pixel {|pixel, c, r| pixel.red = 0}
f.display #the image is still white. It should really be a shade of blue.
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

ruby rmagick pixel

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

找不到捆绑命令.坏翻译

我对bundler gem有一些问题.

当我运行"gem list"时,我可以看到已经安装了bundler."bundler(1.1.3,1.0.21)".

但是,当我尝试运行命令"bundle"时,我收到以下消息:

sh.exe": /c/Program Files (x86)/ruby-1.9.3/bin/bundle: "c:/Program: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我认为这是一些路径错误,但无论我多少谷歌,我都无法找到解决问题的方法.

有人有任何提示吗?

这是我的路径:

C:\Program Files (x86)\AMD APP\bin\x86_64;
C:\Program Files (x86)\AMD APP\bin\x86;
C:\Program Files\Common Files\Microsoft Shared\Windows Live;
C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
%SystemRoot%\system32;
%SystemRoot%;    
%SystemRoot%\System32\Wbem;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;
C:\Windows\system32\gs\gs8.71\bin;
C:\Program Files (x86)\Windows Live\Shared;
C:\DevKit\bin;
C:\Program Files (x86)\Common Files\Autodesk Shared\;
C:\Program Files\Common Files\Autodesk Shared\;
C:\Program Files\TortoiseSVN\bin;
C:\Program Files (x86)\Autodesk\Backburner\;
F:\Program Files (x86)\Mozart\bin;
C:\Program Files (x86)\ruby-1.9.3\lib\ruby\gems\1.9.1\gems\rails-3.0.9\bin;
C:\Ruby192\lib\ruby\gems\1.9.1\gems\rake-0.9.2\bin;
W:\wamp\bin\mysql\mysql5.5.16\lib;
F:\Program …
Run Code Online (Sandbox Code Playgroud)

ruby gem path bundler

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

在 Razor 视图中打印单个逗号(或其他字符)

我有一个看似很小的问题,但我找不到解决方案:

在 Razor 视图中我有这样的东西:

<p>
@if (someCondition){
   foreach (Sometype s in Model.ListOfSomeTypes){
      @s.Name @//There is a space in front here.
   }
}
</p>
Run Code Online (Sandbox Code Playgroud)

但我希望必须将所有名称用逗号分隔,所以我本质上想做这样的事情:

<p>
@if (someCondition){
   foreach (Sometype s in Model.ListOfSomeTypes){
      @s.Name, 
   }
}
</p>
Run Code Online (Sandbox Code Playgroud)

然而,剃刀却吓坏了。我怎样才能达到这样的结果?


我尝试过一些像这样的变体:

@{','} @s.Name @//No good
@"," @s.Name @//No good
@{","} @s.Name @//No good
@StringVariableContainingComma @s.Name @//This works, but seems to be very unnessecary to me.
Run Code Online (Sandbox Code Playgroud)

诗。我知道上面建议的逗号分隔元素解决方案无法正常工作。删除了条件以便于阅读问题。

asp.net-mvc razor

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

升级现有的bcrypt哈希回合计数

我有一个数据库,其中大多数哈希对于我们的用例而言,舍入计数太低。我希望将它们升级到更高的回合/迭代次数,希望使用node.bcrypt.js库。

例:

我的数据库中有类似的内容

'$2a$05$Ss068.p/.i4IRzrYoLM/U.ETLpzwrBs2vVfViqgfC5bI4i3BGClZC' 
   //From: bcrypt.hashSync("hello world", 5)
Run Code Online (Sandbox Code Playgroud)

我希望它变成这样的东西:

'$2a$10$6sZOFUEWdVMHoCsgF0k1..RhwoD7VmLlLc5.67/Qw81/XuSuNIOcO'
  //From: bcrypt.hashSync("hello world", 10)
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?我认为api可能看起来像这样:

//Non-existing api;
var hash = '$2a$05$Ss068.p/.i4IRzrYoLM/U.ETLpzwrBs2vVfViqgfC5bI4i3BGClZC';
const roundCount = 10
bcrypt.upgradeHashRoundCount(hash, roundCount)
  .then(function(upgradedHash){
    console.log(upgradedHash)
  })
  .catch(function(error){
    console.error("Not a bcrypt hash, or has higher round-count than provided round count")
  })
Run Code Online (Sandbox Code Playgroud)

编辑以澄清:

我想做一个批处理作业,在其中获取所有哈希,并对每个哈希进行升级,而没有原始密码可用。由于bcrypt本质上只是在循环,所以我认为从理论上讲应该可以再进行一些回合并将其存储回去。

bcrypt node.js

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

按钮上的Twitter引导跨度类

我非常喜欢twitter bootstrap css/less框架,但最近我发现了一个小问题.

当我.spanX按下按钮时,它们的宽度不会与div相同.

请看这个Jsfiddle看一个我的意思的例子.在下图中,两者都是.span4.

它们都是.span4但宽度不同

我使用span类错了,或者这可能是一个错误?


编辑:

我在mac osx-new-cat上使用chrome 23.0.1271.64.

html css twitter-bootstrap

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

Ruby数组的哈希和map函数

我有一系列哈希,像这样:

my_array = [{foo:1,bar:"hello",baz:3},{foo:2,bar:"hello2",baz:495,foo_baz:"some_string"},...] 
#there can be arbitrary many in this list.
#There can also be arbitrary many keys on the hashes.
Run Code Online (Sandbox Code Playgroud)

我想创建一个新数组,它是最后一个数组的副本,除了我删除任何:bar条目.

my_array2 = [{foo:1,baz:3},{foo:2,baz:495,foo_baz:"some_string"},...]
Run Code Online (Sandbox Code Playgroud)

我可以my_array2这样做:

my_array2 = my_array.map{|h| h.delete(:bar)}
Run Code Online (Sandbox Code Playgroud)

但是,这会改变原作my_array,我想保持不变.

有没有办法做到这一点,而不必先复制my_array?

ruby arrays hash

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