什么是使用的利弊:
FooLib::Plugins
FooLib::Plugins::Bar
Run Code Online (Sandbox Code Playgroud)
与
FooLib::Plugin
FooLib::Plugin::Bar
Run Code Online (Sandbox Code Playgroud)
命名惯例?你会用什么或者你用的是什么?在社区中更常用的是什么?
我有一些问题,拌匀,MIX_ENV=prod
用mix 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) 如何测试使用cookie的给定控制器操作?
如何在功能测试中设置cookie以及如何获取它们?
以后调用的速度更快:
def first_method?() second_method?() end
Run Code Online (Sandbox Code Playgroud)
要么
alias_method :first method, :second_method
Run Code Online (Sandbox Code Playgroud)
如果可能的原因?
(注意:我不问什么更好/更好等等 - >只有原始速度以及为什么它更快有趣这里)
我正在尝试将我的地图解析为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) 使用此代码:
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) 我想用elixir 连接到ExIrc中的两台服务器,我找不到一个简单的解决方案.我对elixir相当新,而我能看到的所有我能做的就是使用"雨伞"运行两个应用程序并让它们相互连接?(我想使用一个应用程序连接到一个IRC服务器,如果它有一些特定的单词,解析数据并发送到另一个IRC服务器)
什么是更好的风格:
def method; some code end
Run Code Online (Sandbox Code Playgroud)
要么
def method() some code end
Run Code Online (Sandbox Code Playgroud)
为什么?
我有一个启动应用程序的程序,然后将(子)工作者添加到主管.显然,在做了之后,它就没有什么可做的了,它就会停止(退出).因此,让它不停止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做到这一点?
或者我应该使用不同的解决方案来打包和分发我的程序,实际上更像是服务器/守护程序而不是命令行工具?
elixir ×4
ruby ×4
coding-style ×1
cookies ×1
elixir-mix ×1
erlang ×1
irc ×1
json ×1
module ×1
namespaces ×1
naming ×1
performance ×1