小编Szy*_*Jeż的帖子

在Ruby中命名命名空间的首选方式(更好的样式)是什么?单数还是复数?

什么是使用的利弊:

FooLib::Plugins
FooLib::Plugins::Bar
Run Code Online (Sandbox Code Playgroud)

FooLib::Plugin
FooLib::Plugin::Bar
Run Code Online (Sandbox Code Playgroud)

命名惯例?你会用什么或者你用的是什么?在社区中更常用的是什么?

ruby naming namespaces module naming-conventions

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

凤凰服务器上的MIX_ENV = prod在PORT = 80时崩溃

我有一些问题,拌匀,MIX_ENV=prodmix phoenix.server,它失败的开始.在Linode的Ubuntu 14.04上运行所有最新的(Elixir 1.0.5,Phoenix 0.14.0),除了Erlang(17.x,17.3).

$ MIX_ENV=prod PORT=80 mix phoenix.server
{"Kernel pid terminated",application_controller,"{application_start_failure,elirc_site,{{shutdown,{failed_to_start_child,'Elixir.ElircSite.Endpoint',{shutdown,{failed_to_start_child,'Elixir.Phoenix.Endpoint.Server',{shutdown,{failed_to_start_child,{ranch_listener_sup,'Elixir.ElircSite.Endpoint.HTTP'},{shutdown,{failed_to_start_child,ranch_acceptors_sup,{{badmatch,{error,eacces}},[{ranch_acceptors_sup,init,1,[{file,\"src/ranch_acceptors_sup.erl\"},{line,30}]},{supervisor,init,1,[{file,\"supervisor.erl\"},{line,243}]},{gen_server,init_it,6,[{file,\"gen_server.erl\"},{line,306}]},{proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,239}]}]}}}}}}}}},{'Elixir.ElircSite',start,[normal,[]]}}}"}
Run Code Online (Sandbox Code Playgroud)

具体来说,我认为这部分是追踪.

{{badmatch,{error,eacces}},[{ranch_acceptors_sup,init,1,[{file,\"src/ranch_acceptors_sup.erl\"},{line,30}]}
Run Code Online (Sandbox Code Playgroud)

elixir-mix elixir phoenix-framework

11
推荐指数
3
解决办法
2188
查看次数

如何在Rails的功能测试中测试cookie状态?

如何测试使用cookie的给定控制器操作?

如何在功能测试中设置cookie以及如何获取它们?

cookies ruby-on-rails functional-testing

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

在Ruby中运行得更快:定义别名方法还是使用alias_method?

以后调用的速度更快:

def first_method?() second_method?() end
Run Code Online (Sandbox Code Playgroud)

要么

alias_method :first method, :second_method
Run Code Online (Sandbox Code Playgroud)

如果可能的原因?

(注意:我不问什么更好/更好等等 - >只有原始速度以及为什么它更快有趣这里)

ruby performance pointer-aliasing

8
推荐指数
2
解决办法
416
查看次数

JSON使用Poison在Elixir中编码地图

我正在尝试将我的地图解析为json字符串,我将如何使用毒药?

我尝试了以下内容.

iex(19)> test = %{"api_key" => "sklfjklasfj"}
%{"api_key" => "sklfjklasfj"}
iex(20)> Poison.Encoder.encode(test, [])
[123, [[34, ["api_key"], 34], 58, [34, ["sklfjklasfj"], 34]], 125]
Run Code Online (Sandbox Code Playgroud)

我期待的是

"{"api_key": "sklfjklasfj"}"
Run Code Online (Sandbox Code Playgroud)

json elixir

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

为什么`-1*x`比`-x`快?为什么?

使用此代码:

include Benchmark
n = 10**8
r = []
Benchmark.benchmark(" "*7 + CAPTION, 7, FORMAT, ">avg:", ">total:") do |b|
  a = 1

  r << b.report("Benchmark -1:")   { (n).times do
    -1 * a
  end }

  r << b.report("Benchmark - :")   { (n).times do
    -a
  end }

  [(r.sum{|e| e }) / 2, r.sum{|e| e }]
end
Run Code Online (Sandbox Code Playgroud)

我得到了这个结果ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]:

                     user     system      total        real
Benchmark -1:  4.930000   0.000000   4.930000 (  4.938359)
Benchmark - :  5.650000   0.000000   5.650000 ( …
Run Code Online (Sandbox Code Playgroud)

ruby micro-optimization

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

使用ExIrc(Elixir)连接到多个IRC服务器?

我想用elixir 连接到ExIrc中的两台服务器,我找不到一个简单的解决方案.我对elixir相当新,而我能看到的所有我能做的就是使用"雨伞"运行两个应用程序并让它们相互连接?(我想使用一个应用程序连接到一个IRC服务器,如果它有一些特定的单词,解析数据并发送到另一个IRC服务器)

irc elixir

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

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

如何构建一个Elixir escript,它不会在执行后停止Erlang VM(如elixir --no-halt)

我有一个启动应用程序的程序,然后将(子)工作者添加到主管.显然,在做了之后,它就没有什么可做的了,它就会停止(退出).因此,让它不停止VM将允许工作人员工作.

我提出的唯一解决方案是添加:

IO.gets "Working... To finish hit <Enter>."
Run Code Online (Sandbox Code Playgroud)

在末尾...

我希望escript在运行之后构建一个不会像以下那样停止Erlang VM:

elixir --no-halt -S mix run --eval 'MyApp.CLI.m
ain(["some-arg"])'
Run Code Online (Sandbox Code Playgroud)

要么

mix run --no-halt --eval 'MyApp.CLI.m
ain(["some-arg1,some-arg2"])'
Run Code Online (Sandbox Code Playgroud)

有没有办法用escript做到这一点?

或者我应该使用不同的解决方案来打包和分发我的程序,实际上更像是服务器/守护程序而不是命令行工具?

erlang elixir erlang-escript

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