小编The*_*hop的帖子

将相同的固定值插入多行

我有一个带有列的表,让我们调用table_column当前null表的所​​有行.我想将值"test"插入到所有行的列中.有人可以给我这个SQL吗?

我已经尝试了, INSERT INTO table (table_column) VALUES ("test");但只填充了最后一行.如何一次完成所有行?

mysql sql sql-update sql-insert

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

在rails 3中使用helper输出html

我正在努力构建一个帮助器,输出一个由集合的所有成员组成的<'ul>.对于集合中的每个成员,我想打印出一个带有标题的<'li>,以及一个指向CRUD成员的div链接.这与Rails为索引视图的脚手架输出非常相似.

这是我得到的帮手:

def display_all(collection_sym)
  collection = collection_sym.to_s.capitalize.singularize.constantize.all

  name = collection_sym.to_s.downcase

  html = '' 

  html << "<ul class=\"#{name}-list\">"

  for member in collection do
    html << content_tag(:li, :id => member.title.gsub(' ', '-').downcase.strip) do
     concat content_tag(:h1, member.title, :class => "#{name}-title")
     concat link_to 'Edit', "/#{name}/#{member.id}/edit"
     concat "\|"
     concat link_to 'View', "/#{name}/#{member.id}"
     concat "\|"
     concat button_to 'Delete', "/#{name}/#{member.id}", :confirm => 'Are you sure?  This cannot be undone.', :method => :delete
    end
   end

   html << '</ul>'

 return html
end 
Run Code Online (Sandbox Code Playgroud)

而那输出正是我想要的.首先,如果有人认为有更好的方法可以做到这一点,请随意纠正我,我怀疑我是以低音方式做到这一点,但此刻它是我知道如何的唯一方式.

然后我尝试将链接包装在div中,如下所示:

def display_all(collection_sym)
  collection = collection_sym.to_s.capitalize.singularize.constantize.all …
Run Code Online (Sandbox Code Playgroud)

ruby html-helper ruby-on-rails actionviewhelper ruby-on-rails-3

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

使用Mocha/Chai测试JS异常

试图测试一些抛出Mocha/Chai异常的代码,但没有运气,这是我试图测试的简单代码:

class window.VisualizationsManager

  test: ->
    throw(new Error 'Oh no')
Run Code Online (Sandbox Code Playgroud)

这是我的测试:

describe 'VisualizationsManager', ->

  it 'does not permit the construction of new instances', ->

    manager = new window.VisualizationsManager

    chai.expect(manager.test()).to.throw('Oh no')
Run Code Online (Sandbox Code Playgroud)

但是,当我运行规范时,测试失败并抛出异常.

Failure/Error: Oh no
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

javascript mocha.js coffeescript chai

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

RSpec,存根嵌套资源方法

我有两个型号:

class Solution < ActiveRecord::Base
  belongs_to :owner, :class_name => "User", :foreign_key => :user_id
end

class User < ActiveRecord::Base
  has_many :solutions
end
Run Code Online (Sandbox Code Playgroud)

我在这样的用户中嵌套解决方案:

ActionController::Routing::Routes.draw do |map|
  map.resources :users, :has_many => :solutions
end
Run Code Online (Sandbox Code Playgroud)

最后这是我试图规范的行动:

class SolutionsController < ApplicationController
  before_filter :load_user

  def show
    if(@user)
      @solution = @user.solutions.find(params[:id])
    else
      @solution = Solution.find(params[:id])
    end
  end

  private

  def load_user
    @user = User.find(params[:user_id]) unless params[:user_id].nil?
  end
end
Run Code Online (Sandbox Code Playgroud)

我的问题是,我怎么样@user.solutions.find(params[:id])

这是我目前的规格:

describe SolutionsController do

  before(:each) do
    @user = Factory.create(:user)
    @solution = Factory.create(:solution)
  end

  describe "GET Show," do …
Run Code Online (Sandbox Code Playgroud)

bdd unit-testing rspec ruby-on-rails nested-resources

12
推荐指数
2
解决办法
7022
查看次数

克隆没有.git目录的Git仓库

是否可以在没有git的情况下克隆存储库,在存储库的本地副本中创建.git文件夹?有点像只读功能?

git git-clone

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

在我的rails控制器方法中运行线程

我有一组数据,我想在我的rails应用程序内部进行一些计算,每个计算是相互独立的,所以我想对它们进行处理,所以我的响应要快得多.

这就是我所拥有的ATM:

def show

  @stats = Stats.new

  Thread.new {
    @stats.top_brands = #RESULT OF FIRST CALCULATION     
  }

  Thread.new {
    @stats.top_retailers = #RESULT OF SECOND CALCULATION
  }

  Thread.new {
    @stats.top_styles = #RESULT OF THIRD CALCULATION
  }

  Thread.new {
     @stats.top_colors = #RESULT OF FOURTH CALCULATION
  }

  render json: @stats
end
Run Code Online (Sandbox Code Playgroud)

现在,这会为每个成员实例返回一堆空数组@stats,但是,如果我将这些线程连接在一起,它就会运行,但是由于每个线程阻塞而无法实现线程化的目的.

因为我对线程很新,所以我想知道我在这里做错了什么,或者它是否有可能完成我正在尝试做的事情,也就是说,在paralell中运行4个计算并将结果返回给客户端.

谢谢,

ruby multithreading ruby-on-rails actioncontroller

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

在与Java中的源代码相同的包中包含单元测试

我在Ruby世界中经历了很长一段时间后回到Java中,我对JUnit测试以及我正在测试的源代码有疑问.

如果我有一个公司的图形代码包,我们可以调用它com.example.graphics,我是否应该将测试包含在该软件包中,还是应该包含在单独的软件包中com.example.graphics.test

java junit unit-testing packages

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

有人可以给我一个node.js应用程序的例子

我试图理解现在存在的一些较新的Web编程框架之间的差异,即Node.js,Rails和Sinatra.

有人能给我一个最适合每个框架的应用程序示例吗?

也就是说,什么是一个应用程序,这将是最适合的Node.js,而不是导轨或西纳特拉,什么是一个应用程序,它是最适合的Rails,而不是Node.js和受西纳特拉等.....

ruby-on-rails sinatra node.js

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

Rails STI和"type"字符串的设置

我想我需要在Rails中使用STI.

这是我的班级:

class Person < ActiveRecord::Base
end

class Landlord < Person
end
Run Code Online (Sandbox Code Playgroud)

和people表有:type一个字符串列.

所以,我期望在表中看到,作为Person的每一行都将类型设置为"Person",并且每个Landlord都将类型设置为"Landlord".但是,这不是我所看到的.每个房东的类型都设置为"Landlord",但所有Person的类型都设置为nil.这很好可能是rails工作的方式,但我只是在寻找一些确认.

inheritance ruby-on-rails sti

5
推荐指数
2
解决办法
4472
查看次数

从超级电话中擦洗一个街区

我正在使用ActiveAttr,它通过块选项为您提供了很好的初始化:

person = Person.new() do |p|
  p.first_name = 'test'
  p.last_name = 'man'
end
Run Code Online (Sandbox Code Playgroud)

但是,在包含ActiveAttr :: Model的特定类中,我想绕过此功能,因为我想将块用于其他内容.所以我们走了:

class Imperator::Command
 include ActiveAttr::Model
end


class MyCommand < Imperator::Command

  def initialize(*args, &block)
    @my_block = block

    super(*args)
  end
end
Run Code Online (Sandbox Code Playgroud)

这很难失败,因为块仍然传递到链上,并最终在ActiveAttr内,这段代码运行:

def initialize(*)
  super
  yield self if block_given?
end
Run Code Online (Sandbox Code Playgroud)

所以,如果我的电话如下:

MyCommand.new() { |date| date.advance(month: 1) }
Run Code Online (Sandbox Code Playgroud)

它失败如下:

NoMethodError: undefined method `advance' for #<MyCommand:0x007fe432c4fb80>
Run Code Online (Sandbox Code Playgroud)

因为MyCommand没有方法:提前调用MyCommand显然失败了.

所以我的问题是,有没有一种方法可以在我super再次调用之前从方法签名中删除块,这样块的行程不会超过我重写的初始化程序?

ruby ruby-on-rails active-attr

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