小编Ima*_*teh的帖子

rails + activerecord:如何使用特定字段的值作为键从表创建哈希

给定一个ZipCodeInfos表,包含字段zipcode,state,city(所有字符串),其中zipcode是唯一的:

zipcode,city,state
"10000", "Fooville", "AA"
"10001", "Smallville", "AA"
"10002", "Whoville", "BB"
Run Code Online (Sandbox Code Playgroud)

生成整个表的哈希对象的最快方法是什么,其中zipcode是这样的键:

{ "10000" => {:city => "Fooville", :state => "AA" },
"10001" => {:city => "Smallville", :state => "AA" },
"10002" => {:city => "Whoville", :state => "BB" } }
Run Code Online (Sandbox Code Playgroud)

我知道对于给定的记录,我可以使用.attributes生成一个带有键,值对的字段名,字段值的哈希,例如Zipcode.first.attributes给我

{"id" => 1, "zipcode" => "10000", "city" => "Fooville", "state => "AA" }
Run Code Online (Sandbox Code Playgroud)

但是,如果没有蛮力迭代每条记录(通过.map),我就无法弄清楚如何使用zipcode创建所需的哈希值作为哈希每个节点的关键.

这是我能想到的最好的,我怀疑有一些漂亮的Ruby优点更快?

zip_info_hash = {}
ZipCodeInfo.all.map{|x| zip_info_hash[x.zip] = 
                       {'state' => x.state, 'city' => x.city }}
Run Code Online (Sandbox Code Playgroud)

hash activerecord

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

将构建上传到Testflight IOS

我试图将我的最新版本上传到Testflight时遇到了这个错误,我无法理解与早期版本的应用程序相比我可能做的不同.谁能指出我正确的方向?这是我得到的错误:

Invalid IPA: failed to parse the info.plist (exception was: 'ascii' codec can't 
decode byte 0xc3 in position 336: ordinal not in range(128))
Run Code Online (Sandbox Code Playgroud)

xcode plist ios testflight

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

如何在Java中使用AM / PM获取时间戳

我有一个日期为String,需要使用AM / PM将其转换为时间戳。我尝试按照以下方式进行操作,但我获取了正确的日期格式,但没有采用AM / PM。

有人可以帮忙吗?

代码段:

String dateString = "10/10/2010 11:23:29 AM";

SimpleDateFormat sfdate = new SimpleDateFormat("MM/dd/yyy HH:mm:ss a");
    Date date = new Date();
    date = sfdate.parse(dateString);
    System.out.println(new Timestamp(date.getTime()));
Run Code Online (Sandbox Code Playgroud)

这给我的输出如下:

2010-10-10 11:23:29.0
Run Code Online (Sandbox Code Playgroud)

但是我需要这样

2010-10-10 11:23:29.00000000 AM
Run Code Online (Sandbox Code Playgroud)

请帮助我。

java datetime

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

仅列出Linux中包含字符串的文件的名称

我想列出使用Linux命令包含字符串的文件的名称.

使用egrep时,会显示字符串的所有实例,这可能是倍数.

例如:

egrep disco music_file*.txt
Run Code Online (Sandbox Code Playgroud)

可能表现出来;

music_file1.txt: blah blah blah disco stuff

music_file1.txt: disco blah blah blah

music_file1.txt: I like to listen to italodisco

music_file2.txt: I like to party to disco

music_file3.txt: Does your dog like disco?
Run Code Online (Sandbox Code Playgroud)

而我想要的只是:

music_file1.txt

music_file2.txt

music_file3.txt
Run Code Online (Sandbox Code Playgroud)

问题: 在Linux中搜索字符串时,如何只显示每个文件名的一个实例?

linux

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

在YAML文件中导出锚点

--- #File A
  - Lunch: &01
        - Chicken
        - Rice
        - Sallad
...

--- #File B
  - Monday: *01
  - Tuesday: *01
...
Run Code Online (Sandbox Code Playgroud)

例如,文件A在我的PC中的c:驱动器中,文件B在D:驱动器中.

如何使用YAML导出锚点?

anchor yaml

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

使用itemgetter对dict列表进行排序

这是我的字典:

a = [{"id":1,"data":{"age":16,"name":a}}, 
     {"id":3,"data":{"age":35,"name":b}}, 
     {"id":2,"data":{"age":9,"name":c}}]
Run Code Online (Sandbox Code Playgroud)

我想按字段"年龄"对其进行排序.

lambda我使用:

sorted(a, key=lambda k: k['data']['age'])
Run Code Online (Sandbox Code Playgroud)

怎么做itemgetter

python

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

如何在创建maven项目时选择过滤器编号?

我是maven的新手,想要使用maven创建一个spring项目.下面提到的是我使用的命令:

mvn archetype:generate -DgroupId=com.rakesh.core -DartifactId=Spring3Example 
-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

它要求:

  • 选择一个数字或应用过滤器(格式:[groupId:] artifactId,区分大小写):

它的要求是什么?我尝试了所有数字,我收到了这条消息:

Your filter doesn't match any archetype (hint: enter to return to initial list)
Run Code Online (Sandbox Code Playgroud)

请帮忙.

spring maven

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

Laravel 4分页数

我在我的特定视图/网站中设置了分页,并且它有效.

问题是我有一个PHP计数器:

<?php $count = 0;?> 
   @foreach ($players as $player)
    <?php $count++;?>
    <tr>
    <td>{{ $count }}. </td> 
Run Code Online (Sandbox Code Playgroud)

每当我切换页面时,它从1开始.

我怎么能改变呢?

php laravel laravel-4

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

使用Nitrous.io时如何切换到zsh

有任何想法吗?我尝试过使用:

chsh -s/bin/zsh

但是我尝试过的任何密码都失败了.

zsh nitrousio

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

使用Notepad ++查找带有批处理文件的文本

当我用Notepad ++打开它时,我需要在文件中找到文本.
例如,我需要找到文本"ABC".然而,我需要的真实文本是"ABC"之后的2个数字.所以我有一个批处理文件,当我双击它时,它使用Notepad ++打开一个特定的文件.它需要找到ABC,然后直接查看它后面的2位数字并用它们填充变量.

某些文件可能包含ABC12,而其他文件可能包含ABC21等.

到目前为止我所拥有的是以下内容:

%echo off
"C:\Program Files (x86)\Notepad++\notepad++.exe" %1 
FIND [/I] "ABC"
Run Code Online (Sandbox Code Playgroud)

它打开文件很好,但不搜索.请帮忙!
谢谢!

text batch-file notepad++ find

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