小编one*_*ree的帖子

mysql2 gem的Gem :: LoadError,但它已经存在于Gemfile中

Gem::LoadError
Specified 'mysql2' for database adapter, but the gem is not loaded.
Add `gem 'mysql2'` to your Gemfile
Run Code Online (Sandbox Code Playgroud)

加载以下文件时发生此错误:

active_record/base
Run Code Online (Sandbox Code Playgroud)

这是我在运行rails服务器时遇到的错误.

The mysql2 gem has been added to the Gemfile as well.
Run Code Online (Sandbox Code Playgroud)

我已经完成了bundle install,并尝试重新启动服务器,但仍然得到错误.

ruby-on-rails mysql2 gemfile

104
推荐指数
7
解决办法
5万
查看次数

如何强制RSpec测试失败?

什么是强制RSpec测试失败的正确方法?

1.should == 2不过我在考虑可能还有更好的东西.

testing rspec ruby-on-rails

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

DTLS和TLS之间的区别

  1. TLS和DTLS之间的功能区别是什么?
  2. 使用TLS与DTLS时应用程序流/协商有何不同?

ssl dtls

32
推荐指数
3
解决办法
4万
查看次数

如何使JQuery-AJAX请求同步

如何使ajax请求同步?

我有一张需要提交的表格.但只有在用户输入正确的密码时才需要提交.

这是表单代码:

<form name="form" action="insert.php" method="post" onSubmit="return ajaxSubmit(this);" >
Run Code Online (Sandbox Code Playgroud)

用于发送和检查密码的jquery代码如下:

var ajaxSubmit = function(formE1) {

    var password = $.trim($('#employee_password').val());

    $.ajax({
        type: "POST",
        async: "false",
        url: "checkpass.php",
        data: "password="+password,
        success: function(html) {
            var arr=$.parseJSON(html);
            if(arr == "Successful") {
                return true;
            } else {
                return false;
            }
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

但是,无论ajax请求返回的值如何,表单始终都会提交.我检查了其他一切.当输入正确的密码时,arr的值将变为"成功",反之亦然.

如何使此请求同步?就我可以调试而言,请求是异步的,因此在请求完成之前提交表单.

checkpass.php的代码

<?php 
require("includes/apptop.php");
require("classes/class_employee.php");
require("classes/class_employee_attendance.php");

$employee_password=$_POST['password']; 

$m=new employee();
$m->setbyid_employee(1);
$arr=$m->editdisplay_employee();

if($arr['employee_password'] == $employee_password)
{
$res="Successful";  
}
else
{
$res="Password not match";  
}

echo $res;
?>
Run Code Online (Sandbox Code Playgroud)

更新:已找到解决方案.

正如Olaf Dietshche指出的那样:返回值ajaxSubmit …

ajax jquery synchronous

20
推荐指数
2
解决办法
11万
查看次数

切换Material Design Lite复选框

我正在使用材料设计精简版复选框,我正在尝试使用JavaScript检查或取消选中该元素.我试过这个:

document.getElementById("checkbox-1").checked = true;
Run Code Online (Sandbox Code Playgroud)

那不行.我尝试了与jQuery相同的方法:

$("#checkbox-1").prop('checked',true); 
Run Code Online (Sandbox Code Playgroud)

那也行不通.任何帮助,将不胜感激.

javascript material-design-lite

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

STI,MTI还是CTI,这是目前建议的Rails 4解决方案?

我有一个基本的events表格,并希望有子表为每个事件类型(hiking,party,riverrun等).

我看到很多关于CTI,MTI和STI的旧帖子(2011/2012).一些解决方案适用于Heroku,而其他解决方案则没有.

什么是"当前"Rails做这种事情的方式?是否已将其添加到Rails 4.x中?是否有一个神奇的宝石处理这个(与Heroku上的Postgres)?

一些信息,如果它有帮助:

将来,将有20-50个事件,每个子表可能多达80列.该网站托管在Heroku上.运行Rails 4.0.2

postgresql inheritance ruby-on-rails sti ruby-on-rails-4

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

遇到WebMock问题,而不是正确存根

Ruby 1.9.3,RSpec 2.13.0,WebMock 1.17.4,Rails 3

我正在为公司应用编写测试.有问题的控制器显示客户已拨打电话的表格,并允许排序/过滤选项.

编辑测试失败,因为使用我当前的设置,路径不会呈现,因为recorder_server它未在本地运行,或者未正确设置.请帮忙.

A Errno::ECONNREFUSED occurred in recordings#index:
Connection refused - connect(2)
/usr/local/lib/ruby/1.9.1/net/http.rb:763:in `initialize'

-------------------------------
Request:
-------------------------------
* URL       : http://www.recorder.example.com:8080/recorded_calls
* IP address: 127.0.0.1
* Parameters: {"controller"=>"recordings", "action"=>"index"}
* Rails root: /var/www/rails/<repository>
Run Code Online (Sandbox Code Playgroud)
  1. 在调用时,它的数据连接一个由外部API创建的xml文件,称为Recorder
  2. RecordingsController采用XML文件,并将其解析为一个哈希值.
  3. 当您访问关联的路径时,您会看到哈希的结果 - 已放置的调用表,它们的属性以及排序/过滤器的参数.

到目前为止,这是我的规格.

require 'spec_helper'
include Helpers

feature 'Exercise recordings controller' do
  include_context "shared admin context"

  background do
    canned_xml = File.open("spec/support/assets/canned_response.xml").read
    stub_request(:post, "http://recorder.example.com:8080/recorder/index").
      with(body: {"durations"=>["1"], "durations_greater_less"=>["gt"], "filter_from_day"=>"29", "filter_from_hour"=>"0", "filter_from_minute"=>"0", "filter_from_month"=>"12", "filter_from_year"=>"2014", …
Run Code Online (Sandbox Code Playgroud)

ruby controller rspec ruby-on-rails webmock

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

Skydrive重命名文件夹

我在我的rails应用程序中使用Skydrive gem.

用于重命名我编写的文件夹

def renaming_folder
  client = Skydrive::Client.new(@@access_token)
  folder_id = params[:folder_id]
  # (url, {:body => options})
  # options = {name: "#{params[:rename_field]}"}
  puts "-------------------..."
  puts "#{params[:folder_id]}"
  client.get_skydrive_object_by_id(folder_id)

  # I believe issue comes from this line:
  folderObject = client.update_skydrive_object("#{params[:folder_id]}", options={name: "#{params[:rename_field]}"})

  redirect_to drive_show_path
end
Run Code Online (Sandbox Code Playgroud)

但我收到http_error_400:错误请求错误.我正进入(状态

{"utf8"=>"?",
 "authenticity_token"=>"BAYGFcb5/74c7RV5NH1u4DCAT1MqLvLCkp9F3Q/Fav+B2wdab4aE5LBJAVr90MMu0GbfFwHTuLyncFRWtGyYTA==",
 "rename_field"=>"weqweqwe",
 "folder_id"=>"folder.cecb8eb83d90dbeb.CECB8EB83D90DBEB!106",
 "commit"=>"Rename Folder"}
Run Code Online (Sandbox Code Playgroud)

在我的参数.

有人可以帮忙吗?寻找可信和/或官方来源的答案.

当我添加puts时,我能够获得所有值.

ruby-on-rails-4 onedrive

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

如何在git分支上创建符号链接?

我正在研究SO Ruby Chat规则repo.将RULES.md在主应该是一样rules.md的GH-页面分支; 但是,它并不反映后者的变化.

我知道目录B中的符号链接只是指向目录A中的文件.我想在git中跨分支应用相同的逻辑.

同样,由于gh-pages分支是主要焦点,我想在master中指向一个符号链接gh-pages/rules.md.我做了一些研究,找不到任何关于这个问题的内容.

git symlink branch

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

在Rails 4中定义模型/类中的自定义方法

我有以下型号:

class ActivityLog < ActiveRecord::Base
  validates :user_id, :instance_id, :action, presence: true
  validates :user_id, :instance_id, :action, numericality: true

  def log
    ActivityLog.create(
      user_id: current_user ? current_user.id : -1,
      instance_id: instance_id,
      action: actions.index(action)
      )
  end

  private 

  def actions
    ['start','stop','create','destroy']
  end

end
Run Code Online (Sandbox Code Playgroud)

当我从rails控制台调用以下行时,出现错误:

ActivityLog.log(user_id: 1, instance_id:1, action: 'create')

# Error returned from console
NoMethodError: undefined method `log' for #<Class:0x007fb4755a26a8>
Run Code Online (Sandbox Code Playgroud)

为什么我的方法调用不起作用?我在课堂上定义了它,但它说它是未定义的.我错过了什么或误解了什么?谢谢.

ruby ruby-on-rails class-method ruby-on-rails-4

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

Fedora OpenJDK设置JAVA_HOME

我正在使用Fedora(实际上是Pidora,因为我试图在raspberrypi集群上设置hadoop).我使用ansible在所有节点上安装了oopenjdk.但是,当我尝试设置JAVA_HOME环境变量时,我真的很困惑,看看以下文件夹/usr/lib/jvm:

[root@datafireball1 jvm]# ls
java-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm  jre  jre-1.7.0  jre-1.7.0-openjdk  jre-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm  jre-openjdk
[root@datafireball1 jvm]# ls -alth
total 80K
drwxr-xr-x   3 root root 4.0K Jun  7 21:07 .
lrwxrwxrwx   1 root root   35 Jun  7 21:07 jre-1.7.0-openjdk -> /etc/alternatives/jre_1.7.0_openjdk
lrwxrwxrwx   1 root root   27 Jun  7 21:07 jre-1.7.0 -> /etc/alternatives/jre_1.7.0
lrwxrwxrwx   1 root root   29 Jun  7 21:07 jre-openjdk -> /etc/alternatives/jre_openjdk
lrwxrwxrwx   1 root root   21 Jun  7 21:07 jre -> /etc/alternatives/jre
lrwxrwxrwx   1 root root   48 Jun  7 21:07 jre-1.7.0-openjdk-1.7.0.60-2.4.7.0.fc20.arm …
Run Code Online (Sandbox Code Playgroud)

java linux openjdk fedora environment-variables

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

如何在Ruby中的哈希中放入一个哈希数组?

Perl有一个关于数组和散列组合的非常好的文档,但我找不到Ruby的一个.

当我尝试

data = {
  "key" => "value",
  [{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
}

p data
Run Code Online (Sandbox Code Playgroud)

我收到以下错误.我究竟做错了什么?

test.rb:3: syntax error, unexpected '\n', expecting =>
Run Code Online (Sandbox Code Playgroud)

ruby arrays hash

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