小编Мал*_*евъ的帖子

了解Gemfile.lock文件

运行该bundle install命令后,将在工作目录中创建"Gemfile.lock ".该文件中的指令是什么意思?

例如,让我们采取以下文件:

PATH
  remote: .
  specs:
    gem_one (0.0.1)

GEM
  remote: http://example.org/
  specs:
    gem_two (0.0.2)
    gem_three (0.0.3)
      gem_four (0.0.4)

PLATFORMS
  platform

DEPENDENCIES
  gem_two
  gem_one!
Run Code Online (Sandbox Code Playgroud)

' PATH ',' GEM ',' PLATFORMS '和' DEPENDENCIES '描述的是什么?他们都需要吗?

什么应该包含' 远程 '和' 规格 '子命令?

" DEPENDECIES "组中宝石名称后的感叹号是什么意思?

ruby bundler gemfile.lock

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

如何获取Webpack中每个块包含的所有文件(或模块)的列表

似乎无法在webpack中找到任何调试选项或插件来显示究竟是什么进入了一个块.

我为什么需要这个?我注意到代码分割的字面意思使得一切都变得更大,然后将所有东西都放在一个文件中.这有点反直觉,因为我不相信webpack的bootstrap代码是那么重要; 我怀疑它可能是缩小/重复数据删除,但不知道哪些模块实际上被分块,很难做一些孤立的测试来确认.

我的构建过程使用gulp; 如果这有任何区别.

javascript gulp webpack webpack-4

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

Ecto/Elixir,我如何按日期查询?

我正在处理我的应用程序的统计页面,并尝试按日期查询数据.

为了获得日期范围,我使用 Calendar.Date

date_range = Date.days_after_until(start_date, end_date, true)
|> Enum.to_list
Run Code Online (Sandbox Code Playgroud)

它返回日期的日期列表,每个日期看起来像"2017-04-07".因此,根据我的日期date_range,我尝试查询,但它会触发如下错误.

where cannot be cast to type Ecto.DateTime in query: from o in Myapp.Order, where: o.created_date >= ^~D[2017-04-07]

对于created_date秩序领域,我做了这样的领域, field :created_date, Ecto.DateTime.

如果我想按日期查询,我该如何查询?

预先感谢.

datetime elixir ecto

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

Backbone.js前端有RESTful Rails后端吗?

我开始使用PHP开发Web开发世界,最近几年开始使用Rails.从那时起,我一直在Rails中完成所有的Web项目.

最近似乎有一种趋势,即将Rails作为纯REST后端服务,并使用Backbone.js等前端框架进行所有前端交互.我想知道你们对它们有什么看法?这将是最终的未来吗?

同样,除了Backbone.js之外,为此目的还有哪些其他前端框架的替代方案?

另外假设我想支持我的应用程序的桌面版和移动版,这是一条正确的选择吗?那么我将有一个具有不同前端服务的后端服务?这样我就不需要管理Rails方面的所有视图了?

谢谢!

model-view-controller frontend ruby-on-rails backbone.js

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

为什么Enumerable#detect需要一个Proc/lambda?

Enumerable#detect返回块计算结果的数组的第一个值true.它有一个可选的参数,需要响应call并在这种情况下被调用,返回它的值.所以,

(1..10).detect(lambda{ "none" }){|i| i == 11} #=> "none"
Run Code Online (Sandbox Code Playgroud)

为什么我们需要lambda?为什么我们不直接传递默认值,因为(在我的测试中)lambda无论如何都不能有任何参数?像这样:

(1..10).detect("none"){|i| i == 11} #=> "none"
Run Code Online (Sandbox Code Playgroud)

ruby lambda enumerable detect proc

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

在Ruby中为Regex模式生成字符串

在Python语言中,我发现rstr可以为正则表达式模式生成一个字符串.

或者在Python中我们有这个方法可以返回字符串的范围:

re.sre_parse.parse(pattern)
#..... ('range', (97, 122)) ....
Run Code Online (Sandbox Code Playgroud)

但在Ruby中我没有找到任何东西.

那么如何在Ruby(反向正则表达式)中为正则表达式模式生成字符串?

我想要这样的事情:

"/[a-z0-9]+/".example
#tvvd
"/[a-z0-9]+/".example
#yt
"/[a-z0-9]+/".example
#bgdf6
"/[a-z0-9]+/".example
#564fb
Run Code Online (Sandbox Code Playgroud)

"/ [a-z0-9] + /"是我的输入.输出必须是我的正则表达式模式中可用的正确字符串.这里的输出是:tvvd,yt,bgdf6,564fb, "example"方法生成它们.我需要那种方法.

谢谢你的建议.

ruby regex string random-sample

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

Ruby:对包含nil的多维数组进行排序有时会失败

我在其中一个项目的测试失败中找到了这个例子.为什么这样做:

[[1,2,3], [2,3,4], [1,1,nil]].sort
#=> [[1, 1, nil], [1, 2, 3], [2, 3, 4]]
Run Code Online (Sandbox Code Playgroud)

但这不是:

[[1,2,3], [nil,3,4], [1,1,nil]].sort
#=> ERROR: ArgumentError: comparison of Array with Array failed
Run Code Online (Sandbox Code Playgroud)

经过测试的Ruby版本:2.0.0, 1.9.3.

ruby arrays sorting

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

Ruby,如何引用Root命名空间?

当我有这样的模块时:

module MyModule
  class MyClass
  end
end
Run Code Online (Sandbox Code Playgroud)

我可以访问/修改MyModule引用它:

MyModule.const_set("MY_CONSTANT", "value")
Run Code Online (Sandbox Code Playgroud)

但是Root命名空间呢,那个::?,我正在寻找类似的东西:

::.const_set("MY_CONSTANT", "value")
Run Code Online (Sandbox Code Playgroud)

const_set事情仅仅是一个例子,请不要试图解决这个具体的情况,但实际上在做参考的方式Root命名空间

ruby program-entry-point

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

是否需要删除Gemfile.lock?

我在Ubuntu 10.04上,我必须推送到Heroku的应用程序有一个Gemfile.lock,这个应用程序是由另一个程序员开发的.

当我使用bundle install命令时,这将安装必要的宝石以运行应用程序rails s.

是否bundle install在我的Gemfile或Gemfile.lock中获取特定的gem?

我的Gemfile和Gemfile.lock不一样.

我必须删除Gemfile.lock吗?

这是我的Gemfile:

source 'http://rubygems.org'

#ruby '1.9.3'

gem 'rails', "= 3.1.11"
#gem "rake", "= 0.8.7"
gem 'racc'
# gem 'sqlite3'
#gem 'acts_as_list', '>= 0.1.0'
#gem 'acts_as_tree'
gem 'paperclip'
gem 'aws-s3', :require => 'aws/s3'
gem 'aws-sdk'
gem 'gravatar_image_tag'
gem 'kaminari'
gem 'jquery-rails', '~> 2.1'
gem 'RedCloth', '>= 3.301'
gem 'carmen', :git => 'git://github.com/alvatarc/carmen.git', :branch => '0.2.x'
#gem 'carmen'
gem 'sass-rails'
gem 'http_accept_language'
gem 'right_aws'
gem 'exception_notification'

group :development …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails heroku gemfile gemfile.lock

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

您没有写入/var/lib/gems/1.9.1目录的权限

对于我尝试安装的所有gem,我收到此错误:

错误:执行gem时...(Gem :: FilePermissionError)您没有对/var/lib/gems/1.9.1目录的写权限.

OBS.我在Ubuntu 14上运行.

ruby rubygems ruby-on-rails

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