小编God*_*a74的帖子

在 Rails 中获取最近 X 个月的名称

我正在尝试获取过去 6 个月的月份名称数组。我见过其他帖子讨论迭代和打印实际日期 7/1/16、7/2/16 等,但没有任何内容只涉及月份名称:

[“二月”、“三月”、“四月”、“五月”、“六月”、“七月”]

我正在尝试以下代码,但出现此错误:

@array = []
(6.months.ago..Time.now).each do |m|
  @array.push(Date::MONTHNAMES[m])  
end 

TypeError: can't iterate from ActiveSupport::TimeWithZone
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

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

Go中将网络掩码转换为CIDR

我正在寻找一种将网络掩码字符串转换为 Go 中的 CIDR 表示法的方法。

例如,“255.255.255.0”->“/24”

我目前正在使用以下逻辑获取 IP 地址和网络掩码字符串,这可能会使事情变得复杂。

我一直在仔细阅读该net库,试图看看是否有不同的函数可以用来完成我想要的功能,这实际上只是 CIDR 表示法中的 IP 地址:

192.168.1.2/24
Run Code Online (Sandbox Code Playgroud)
var mgmtInterface *net.Interface
var err error

mgmtInterface, err = net.InterfaceByName("eth0")
if err != nil {
  log.Println("Unable to find interface eth0, trying en0")
  mgmtInterface, err = net.InterfaceByName("en0")
}

addrs, err := mgmtInterface.Addrs()
if err != nil {
  log.Println("interface has no address")
}

for _, addr := range addrs {
  var ip net.IP
  var mask net.IPMask
  switch v := addr.(type) {
  case *net.IPNet:
    ip = …
Run Code Online (Sandbox Code Playgroud)

go

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

Database_cleaner gem 不清理

我使用 Mongoid 作为我的数据库,并spec_helper.rb按照其他 Stackoverflow 问题的说明配置了我的文件,但是我仍然收到一个错误,即在后续测试中存在对象。所以,database_cleaner没有像它应该的那样清理我的测试数据库。

这是我的spec_helper.rb

ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rails/mongoid'
require 'mongoid-rspec'
require 'database_cleaner'

Mongoid.load!(Rails.root.join("config", "mongoid.yml"))

# Load support files
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
RSpec.configure do |config|
  config.mock_with :rspec
  #config.use_transactional_fixtures = true
  config.infer_base_class_for_anonymous_controllers = false
  config.order = "random"

  config.before(:suite) do
    DatabaseCleaner[:mongoid].strategy = :truncation
    DatabaseCleaner[:mongoid].clean_with(:truncation)
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end
end
Run Code Online (Sandbox Code Playgroud)

我的 rspec 测试文件很简单:

describe Stock do
  it "should get created with only …
Run Code Online (Sandbox Code Playgroud)

ruby rspec ruby-on-rails mongodb

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

Chart.js 气泡图更改数据集标签

是否可以更改显示在气泡 chart.js 图表工具提示中的数据集标签?

图表.js

就目前而言,数据集基于x,y,r值,但我想注入一些额外的内容,以便读取(5,55,27.5)它而不是读取类似的内容:(Day:5, Total:55)。我想27.5去掉工具提示中的半径。

javascript ruby-on-rails chart.js

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

如何使用Ruby生成两个地址之间的IP地址列表

我让用户输入了一串他们想要使用的 IP 地址。该字符串看起来像:

192.168.1.3-192.168.1.100
Run Code Online (Sandbox Code Playgroud)

我正在尝试生成一个 IP 地址数组,包括起始地址和结束地址之间的 IP 地址,它看起来像:

["192.168.1.3","192.168.1.4",.....,"192.168.1.99","192.168.1.100"]
Run Code Online (Sandbox Code Playgroud)

我希望它会像

("192.168.1.3".."192.168.1.100").step(1).to_a
Run Code Online (Sandbox Code Playgroud)

但我想不是。

ruby ruby-on-rails ip-address

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

Active Admin无法正确解析html

我正在使用activeadmin和active_admin_editor创建一个包含rails的博客.Blog表很简单:

title:string
content:text
Run Code Online (Sandbox Code Playgroud)

当我添加一个博客文章它显示html标签时,我需要实际解析标签,所以博客文章实际上看起来像一个真正的HTML页面.

我也已经尝试过迁移将内容列更改为"text"而不是字符串......这没有帮助.

这就是我的帖子现在的样子: 在此输入图像描述

我做错了什么或错过了什么来让html标签正确呈现?

**更新**在建议让activeadmin视图工作之后,我仍然在用户视图中留下原始html(非管理员用户只能查看博客)

在此输入图像描述

html ruby blogs ruby-on-rails activeadmin

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

使用Ruby解析TXT并打印某些字段

我有一个非常庞大的txt文件,我正在解析,我想只从行中提取某些值,如果它匹配我正在寻找的.现在,我的标准只是"US",它始终位于我文件的第3列.

以下是数据示例:

1 GARANTOVANA 01|GRT1|XE|6077382046794|EQ0000000004928892|Common Stock|Equity|BBG000RXQ320|BBG000RXQ0H0|32645|||0|39666|//blp/mktdata/bsym/XE/GRT1|//blp/mktdata/buid/XE/EQ0000000004928892|//blp/mktdata/bsid/6077382046794
1 GARANTOVANA 01|GRT1|EU|6210525644566|EQ0000000004928896|Common Stock|Equity|BBG000RXQ6Z7|BBG000RXQ6Q7|44954|||0|44955|//blp/mktdata/bsym/EU/GRT1|//blp/mktdata/buid/EU/EQ0000000004928896|//blp/mktdata/bsid/6210525644566
1 GARANTOVANA 01|GRT1|XW|16643001594954|EQ0000000004928892|Common Stock|Equity|BBG000RXQ6J5|BBG000RXQ0H0|14039|||0|39503|//blp/mktdata/bsym/XW/GRT1|//blp/mktdata/buid/XW/EQ0000000004928892|//blp/mktdata/bsid/16643001594954
1 GARANTOVANA 01|GRT1|SK|6532651738965|EQ0000000000499454|Common Stock|Equity|BBG000PPZ613|BBG000PPZ5P9|27262|27262||0|39599|//blp/mktdata/bsym/SK/GRT1|//blp/mktdata/buid/SK/EQ0000000000499454|//blp/mktdata/bsid/6532651738965
1 GARANTOVANA 01|1GRT1T|B3|27118466846909|EQ0000000036533736|Common Stock|Equity|BBG006T7TR80|BBG006T7TR71|35535|||0|39704|//blp/mktdata/bsym/B3/1GRT1T|//blp/mktdata/buid/B3/EQ0000000036533736|//blp/mktdata/bsid/27118466846909
1 GARANTOVANA 01|1GRT1T|L3|27127056807711|EQ0000000036634423|Common Stock|Equity|BBG006TC4Y09|BBG006TC4XZ3|35535|||0|39704|//blp/mktdata/bsym/L3/1GRT1T|//blp/mktdata/buid/L3/EQ0000000036634423|//blp/mktdata/bsid/27127056807711
1 GARANTOVANA 01|1GRT1T|S2|27114171916930|EQ0000000036685427|Common Stock|Equity|BBG006TCWR94|BBG006TCWR85|35535|||0|39704|//blp/mktdata/bsym/S2/1GRT1T|//blp/mktdata/buid/S2/EQ0000000036685427|//blp/mktdata/bsid/27114171916930
1 GARANTOVANA 01|1GRT1T|PO|29102748938392|EQ0000000042300111|Common Stock|Equity|BBG008GZ4M77|BBG008GZ4M68|35535|||0|39704|//blp/mktdata/bsym/PO/1GRT1T|//blp/mktdata/buid/PO/EQ0000000042300111|//blp/mktdata/bsid/29102748938392
1 GARANTOVANA 02|GRT2|XA|6047317275723|EQ0000000004928900|Common Stock|Equity|BBG000RXQFH7|BBG000RXQ7C0|32774|||0|39669|//blp/mktdata/bsym/XA/GRT2|//blp/mktdata/buid/XA/EQ0000000004928900|//blp/mktdata/bsid/6047317275723
1 GARANTOVANA 02|GRT2|XG|6528354244230|EQ0000000004928900|Common Stock|Equity|BBG000RXQCN7|BBG000RXQ7C0|46707|||0||//blp/mktdata/bsym/XG/GRT2|//blp/mktdata/buid/XG/EQ0000000004928900|//blp/mktdata/bsid/6528354244230
1 GARANTOVANA 02|GRT2|XN|6098856883275|EQ0000000004928900|Common Stock|Equity|BBG000RXQD82|BBG000RXQ7C0|32820|||0|39677|//blp/mktdata/bsym/XN/GRT2|//blp/mktdata/buid/XN/EQ0000000004928900|//blp/mktdata/bsid/6098856883275
1 GARANTOVANA 02|GRT2|XV|26117699449931|EQ0000000004928900|Common Stock|Equity|BBG00591KH88|BBG000RXQ7C0|57346|||0|57347|//blp/mktdata/bsym/XV/GRT2|//blp/mktdata/buid/XV/EQ0000000004928900|//blp/mktdata/bsid/26117699449931
1 GARANTOVANA 02|GRT2|XB|6051612243019|EQ0000000004928900|Common Stock|Equity|BBG000RXQ7P6|BBG000RXQ7C0|37355|37355||0|39723|//blp/mktdata/bsym/XB/GRT2|//blp/mktdata/buid/XB/EQ0000000004928900|//blp/mktdata/bsid/6051612243019
1 GARANTOVANA 02|GRT2|XD|6073087079499|EQ0000000004928900|Common Stock|Equity|BBG000RXQ9W4|BBG000RXQ7C0|32780|||0|39670|//blp/mktdata/bsym/XD/GRT2|//blp/mktdata/buid/XD/EQ0000000004928900|//blp/mktdata/bsid/6073087079499
1 GARANTOVANA 02|GRT2|XE|6077382046795|EQ0000000004928900|Common Stock|Equity|BBG000RXQBQ6|BBG000RXQ7C0|32645|||0|39666|//blp/mktdata/bsym/XE/GRT2|//blp/mktdata/buid/XE/EQ0000000004928900|//blp/mktdata/bsid/6077382046795
1 GARANTOVANA 02|GRT2|XC|6064497144907|EQ0000000004928900|Common Stock|Equity|BBG000RXQ8C8|BBG000RXQ7C0|35535|||0|0|//blp/mktdata/bsym/XC/GRT2|//blp/mktdata/buid/XC/EQ0000000004928900|//blp/mktdata/bsid/6064497144907
1 GARANTOVANA 02|GRT2|XH|6060202177611|EQ0000000004928900|Common Stock|Equity|BBG000RXQ829|BBG000RXQ7C0|32800|||0|39674|//blp/mktdata/bsym/XH/GRT2|//blp/mktdata/buid/XH/EQ0000000004928900|//blp/mktdata/bsid/6060202177611
1 GARANTOVANA 02|GRT2|XI|6055907210315|EQ0000000004928900|Common Stock|Equity|BBG000RXQ7T2|BBG000RXQ7C0|32795|||0|39671|//blp/mktdata/bsym/XI/GRT2|//blp/mktdata/buid/XI/EQ0000000004928900|//blp/mktdata/bsid/6055907210315
1 GARANTOVANA 02|GRT2|XJ|6111741785163|EQ0000000004928900|Common Stock|Equity|BBG000RXQC20|BBG000RXQ7C0|32774|||0|39669|//blp/mktdata/bsym/XJ/GRT2|//blp/mktdata/buid/XJ/EQ0000000004928900|//blp/mktdata/bsid/6111741785163
1 GARANTOVANA …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

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

检查 Bash 中程序的版本等

我创建了一个通过 crontab 运行的 Bash 脚本,用于检查 Linux 主机上安装的 nmap 版本。问题是,由于某种原因,检查无法正常工作,并且它总是尝试一次又一次地安装 nmap...

#!/bin/sh
if ! $(nmap --version | grep -q "7.12"); then
  wget https://nmap.org/dist/nmap-7.12.tar.bz2 -P /tmp/
  cd /tmp && bzip2 -cd nmap-7.12.tar.bz2 | tar xvf -
  cd nmap-7.12
  ./configure --without-zenmap
  make
  make install
  cd ..
  rm nmap-7.12.tar.bz2
  rm -rf nmap-7.12
  reboot
fi
Run Code Online (Sandbox Code Playgroud)

如果我检查作业是否正在运行(应该运行一次,但不会再运行,因为版本应该第二次匹配),它是......

 $> ps aux | grep nmap
root     27696 15.4  0.3   2940  1464 ?        R    16:31   0:00 /bin/bash ./configure --disable-option-checking --prefix=/usr/local --without-zenmap --cache-file=/dev/null --srcdir=. --no-create --no-recursion
Run Code Online (Sandbox Code Playgroud)

从命令行运行检查会产生(不带 -q):

 $> nmap …
Run Code Online (Sandbox Code Playgroud)

linux bash

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

哪个Rails活动模型关联?

试图围绕一些ActiveModel关联策略.

这就是我想要完成的事情:

  1. A Quiz属于Lesson
  2. A User可以参加测验(他们不拥有测验)
  3. 测验分数已保存并属于用户

所以,我相信我需要一个through类型表,例如,user_quiz_scores它会为我提供以下列的跟踪信息:

  • quiz_id
  • 用户身份
  • user_quiz_score

假设到目前为止这个思维过程是正确的,模型看起来像:

class Lesson < ApplicationRecord
  has_one :quiz
end

class Quiz < ApplicationRecord
  belongs_to :lesson
end

class Score < ApplicationRecord
  has_many ??????
end

class User < ApplicationRecord
  has_many :scores
end
Run Code Online (Sandbox Code Playgroud)

分数模型/表格实际上是我在缠绕我的头部时遇到的问题.也许我过于复杂了?非常感谢任何帮助/建议!

ruby ruby-on-rails activemodel

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