小编Mar*_*nos的帖子

如何设置焦点在Elm中的元素?

如何将焦点设置在Elm中的Html元素上?我试图在元素上设置autofocus属性,它只将焦点设置在页面加载上.

html elm

39
推荐指数
3
解决办法
6513
查看次数

如何在不使用Ruby保存到磁盘的情况下生成zip文件?

我在内存中生成了许多PDF文件,我想将它们压缩成一个zip文件,然后再将其作为电子邮件附件发送.我看过Rubyzip并且它不允许我创建一个zip文件而不将其保存到磁盘(也许我错了).

有没有办法在不创建临时文件的情况下压缩这些文件?

ruby zip

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

Elixir中是否有身份功能?

是否已经定义了Elixir的身份功能?

就像是:

identity = fn a -> a end

elixir

28
推荐指数
2
解决办法
2075
查看次数

是否有Elixir相当于Rails`try`功能?

在Rails中,您可以执行以下操作:

@user.try(:contact_info).try(:phone_number)

phone_number如果@user并且contact_info都不是零,那将返回.如果其中一个为零,则表达式将返回nil.

我想知道在Elixir中最常用的方法是什么,知道@user并且contact_info结构.

ruby elixir

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

如何将全局错误添加到Ecto Changeset

我想在Ecto.Changeset上设置一个非特定于字段的错误.

在我的情况下,我有一个登录表单,我想设置一个错误,说电子邮件或密码无效.但是我还是想在它们为空时突出显示emailpassword字段.

在Rails中,您可以通过添加条目来实现errors[:base].在Ecto中有等价物吗?

elixir ecto phoenix-framework

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

更改Rubygem源的阅读顺序

我创建了一个我自己托管的私有宝石.一切顺利,直到有人在rubygems.org上创建了一个同名的宝石.由于rubygems.org优先于我的gem服务器url.我不能再安装我的宝石了.我试图删除rubygems源:

$ sudo gem source -r http://rubygems.org
Run Code Online (Sandbox Code Playgroud)

并重新安装它,以便它在gem源列表中,但它不起作用.

有没有办法改变宝石源的查找顺序?

请注意,我不想重命名我的宝石.

ruby gem rubygems

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

有没有办法在ruby中返回方法参数名称

可能重复:
在Ruby反射中获取参数名称

是否可以获取方法的参数名称?

示例:

def method_called(arg1, arg2)
  puts my_method.inspect
end
Run Code Online (Sandbox Code Playgroud)

我想知道应该调用什么方法(my_method)来获得以下输出:

["arg1", "arg2"]
Run Code Online (Sandbox Code Playgroud)

ruby reflection parameters

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

Ruby STDIN.getc在接收时不读取char

似乎Ruby IO#getc在返回字符之前等到接收到\n.

如果您尝试运行此脚本:

STDOUT.sync = true
STDIN.sync = true
while data = STDIN.getc
  STDOUT.puts "Char arrived"
end
Run Code Online (Sandbox Code Playgroud)

每个发送到stdin的char都会返回一个"Char arrival",但只有在发送了\n之后才会返回.

即使我写STDIN.sync = true,似乎所有char都被缓冲.

在将字符发送到STDIN之后,有没有人知道如何使脚本打印"Char到达"?

ruby stdin getc

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

是否有针对ruby%{}引用的bash等价物?

引用包含单引号和双引号而没有变量插值的bash命令参数的最简单方法是什么?

在Ruby中,您可以使用%{},%[]等来引用字符串.在这种情况下,单引号和双引号将被视为字符.

我的问题还没有真正完整,这里有进一步的解释:

我问的原因是因为我经常在命令行运行ruby和perl代码.由于这些语言使用广泛的单引号和双引号以及$ 1 $ _等全局变量,因此与bash发生冲突.

例:

ls -lat | ruby -p -e '$_ =~ /(\S+)\s+(\S+)\s+(\S+)/; $_ = "'\''" + ($3 || "") + "'\''" + "\n"'
Run Code Online (Sandbox Code Playgroud)

我正在寻找类似于红宝石中%引用的东西:

ls -lat | ruby -p -e %{$_ =~ /(\S+)\s+(\S+)\s+(\S+)/; $_ = "'" + ($3 || "") + "'" + "\n"}
Run Code Online (Sandbox Code Playgroud)

bash quote

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

NoMethodError: 未定义的方法 `<<' net/protocol.rb

我已将应用程序从 2.1 升级到 ruby​​ 到 2.4,但收到以下错误消息:

NoMethodError: undefined method `<<' for {:read_timeout=>60, :continue_timeout=>nil, :debug_output=>nil}:Hash
Did you mean?  <
from /Users/me/.rubies/ruby-2.4.3/lib/ruby/2.4.0/net/protocol.rb:219:in `writing'
Run Code Online (Sandbox Code Playgroud)

net/http 库中似乎发生了一些变化。任何人都知道发生了什么变化和/或如何修复它?

def writing
  @written_bytes = 0
  @debug_output << '<- ' if @debug_output
  yield
  @debug_output << "\n" if @debug_output
  bytes = @written_bytes
  @written_bytes = nil
  bytes
end
Run Code Online (Sandbox Code Playgroud)

在第一@debug_output行引发异常。

ruby http

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

标签 统计

ruby ×6

elixir ×3

bash ×1

ecto ×1

elm ×1

gem ×1

getc ×1

html ×1

http ×1

parameters ×1

phoenix-framework ×1

quote ×1

reflection ×1

rubygems ×1

stdin ×1

zip ×1