小编JZ.*_*JZ.的帖子

基本ruby数组代码:测试数组是否具有特定整数

我正在尝试测试数组中是否有特定的整数.现在我正在使用这个测试;

 def admin?
    current_user.role_ids == [1,2] || current_user.role_ids == [2] || current_user.role_ids == [1,2,5]
  end
Run Code Online (Sandbox Code Playgroud)

代码有效,但我更愿意只测试整数"2",而不是明确地写出包含"2"的每个可能的数字组合.如果您有任何红宝石建议我会非常感激.这是我能想象的最好的动态.

谢谢!

ruby arrays console

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

黄瓜找不到桌子; 但它就在那里.到底是怎么回事?

我正在和黄瓜一起工作,我遇到了困难.当我运行"黄瓜功能"时,我遇到了错误,黄瓜无法找到我的请求表.我犯了什么明显的错误?

先感谢您!

击:

justin-zollarss-mac-pro:conversion justinz$ cucumber features
Using the default profile...
/Users/justinz/.gem/ruby/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010.  Use #requirement
F--

(::) failed steps (::)

Could not find table 'requests' (ActiveRecord::StatementInvalid)
./features/article_steps.rb:3
./features/article_steps.rb:2:in `each'
./features/article_steps.rb:2:in `/^I have requests named (.+)$/'
features/manage_articles.feature:7:in `Given I have requests named Foo, Bar'

Failing Scenarios:
cucumber features/manage_articles.feature:6 # Scenario: Conversion

1 scenario (1 failed)
3 steps (1 failed, 2 skipped)
0m0.154s
justin-zollarss-mac-pro:conversion justinz$ 
Run Code Online (Sandbox Code Playgroud)

Manage_articles.feature:

Feature: Manage Articles
    In order …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails cucumber

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

如何在Rails 3中创建原子提要?

我正试图从我的Posts模型中设置一个简单的原子进给,我遇到了rails 2和rails 3之间的转换问题.

我尝试通过两个步骤完成此任务:

添加<%= auto_discovery_link_tag(:atom) %>到我的/views/layouts/application.html.erb文件中.

创建了/views/posts/index.atom.builder文件.该文件包含:

atom_feed do |feed|   
  feed.title("Daily Deal")   
  feed.updated(@posts.first.created_at)
  @posts.each do |post|
    feed.entry(post) do |entry|
      entry.title(post.title)
      entry.content(post.body, :type => 'html')
      entry.author { |author| author.name("Justin Zollars")}
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我在浏览器中看到了RSS链接,但链接打开时出现错误:

  Too many redirects occurred trying to open
  “feed:http://localhost:3000/posts”.
  This might occur if you open a page
  that is redirected to open another
  page which then is redirected to open
  the original page.
Run Code Online (Sandbox Code Playgroud)

我哪里出错了?

rss ruby-on-rails atom-feed

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

将参数传递给link_to方法

如何使用link_to方法通过MVC传递参数?

视图:

<%= link_to "Remove Tag", remove_tag_issue_path(issue)%>
Run Code Online (Sandbox Code Playgroud)

如何使用link_to方法来利用remove_tag操作?

issues_controller.rb

  def remove_tag(parameter)
     @issue.remove_it(parameter)
  end
Run Code Online (Sandbox Code Playgroud)

issue.rb

  def remove_it(parameter)
      self.users.delete(User.find(parameter))
   end
Run Code Online (Sandbox Code Playgroud)

ruby parameters model-view-controller ruby-on-rails link-to

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

有没有办法打开一系列新的终端窗口,并在一个脚本中运行命令?

我每天都会执行以下命令:

[0]启动终端

  1. 打开窗口 - > memcached
  2. 打开窗口 - > redis-server
  3. 打开窗口 - > memcached
  4. 打开窗口 - > devo
  5. 打开窗口 - > cd /some/path
  6. / some/path $ - > rails s --port=3002
  7. 打开窗口 - > cd /other/path
  8. / other/path $ - > rails s --port=3000

这些步骤可以在一个脚本中完成吗?每次重新启动系统时,我都会失去理智

unix macos bash terminal

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

Ruby赋值运算符

为什么加法"运算符"是一个方法,而赋值运算符+ =不?

运营商为什么这样工作:

ruby-head> 2. +(4)
=> 6

赋值运算符以这种方式工作:

ruby-head> i = 1
=> 1
ruby-head> i + = 1
=> 2
ruby-head> i.+ =(1)SyntaxError:(irb):26:语法错误,意外'='i.+ =(1)^ from /Users/fogonthedowns/.rvm/rubies/ruby-head/bin/irb:17:in`

ruby

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

如何使用回调更新另一个模型?

我正在使用名为Recover的模型.在创建模型之前,我想使用Recover.combo_id属性作为参考来保存布尔属性Combo.occupied = true.

我的SQL似乎正在正确执行查询,但它没有保存此属性.如何保存Combo.occupied = true?

recover.rb:

before_create:checkin

保护

def checkin x = Combo.find_by_id(combo_id).occupied = true
end

Rails控制台:

在2011-01-06 17:07:24 -0800开始POST"/ recovers"for 127.0.0.1
由RecoversController 处理#create as HTML
参数:{"utf8"=>"✓","authenticity_token"=>"o1Iu3Y9/rVBOZPoDUgVP/tRfQ8GxbdWC40DbPq9YxUE =","recover"=> {"combo_id"=>"4","email"=>"jz@marin.edu"},"commit"=>"创建恢复"}恢复负载(0.2ms )SELECT"恢复"."id"FROM"恢复"WHERE("恢复"."email"='justin.zollars@marin.edu')LIMIT 1
恢复负载(0.1ms)SELECT"恢复"."id"FROM "恢复"WHERE("恢复"."combo_id"= 4)LIMIT 1
组合负载(0.5ms)选择"组合".*FROM"组合"WHERE("组合"."id"= 4)LIMIT 1 AREL(0.5 ms)INSERT INTO"恢复"("locker_number","email","requests","created_at","updated_at","combo_id")VALUES(NULL,'justin.zollars@marin.edu',NULL,'2011 -01-07 01:07:24.287072','2011-01-07 01:07:24.287072',4)重定向到 http:// localhost:3000/recovers/14 已完成302发现于119ms

RecoversController#创建

def create @recover = Recover.new(params [:recover])

respond_to do |format|
  if @recover.save
    format.html { redirect_to(@recover, :notice =>
Run Code Online (Sandbox Code Playgroud)

'恢复已成功创建.')} format.xml {render:xml => @recover,:status =>:created,

:location => @recover}

  else
    format.html { render :action => …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails callback

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

如何使用重定向并将对象传递给编辑操作?

如何使用重定向并将对象传递给编辑操作?以下代码不起作用:

  def edit
    @promotion = Promotion.find_by_id(@params['promo_id']) 
  end

  def update
    promotion = Promotion.find(params[:promotion_profile][:promotion_id])
       promo_perfil = promotion.profile

       if promo_perfil.update_attributes(params[:promotion_profile])

         redirect_to admin_edit_path(promotion.id => @params[:promo_id])
       else
   end
Run Code Online (Sandbox Code Playgroud)

ruby parameters action ruby-on-rails

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

子模块中的Git Merge冲突.我只想承诺他们的版本.怎么样?

基本上我已经阅读了git merge冲突指南,我不确定它是否直接解决了我的情况.我在子模块中存在冲突,我只想使用他们的版本,我理解的是git diff -3 app/bundles如何使用子模块的版本,解决冲突并提交?

~/projects/sms/admin(rc)$ git diff
diff --cc app/bundles
index 999fd0a,ae6acdc..0000000
--- a/app/bundles
+++ b/app/bundles
~/projects/sms/admin(rc)$ git diff -1 app/bundles
* Unmerged path app/bundles
diff --git a/app/bundles b/app/bundles
index b34a733..999fd0a 160000
--- a/app/bundles
+++ b/app/bundles
@@ -1 +1 @@
-Subproject commit b34a73375b4dfed6086d26d205ab5535acece053
+Subproject commit 999fd0a307e6d8d517ddf3dd6fab28a3ac0ec2c9
~/projects/sms/admin(rc)$ git diff -2 app/bundles
* Unmerged path app/bundles
~/projects/sms/admin(rc)$ git diff -3 app/bundles
* Unmerged path app/bundles
diff --git a/app/bundles b/app/bundles
index ae6acdc..999fd0a 160000
--- a/app/bundles
+++ b/app/bundles
@@ -1 …
Run Code Online (Sandbox Code Playgroud)

git tree-conflict git-merge git-submodules

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

mysql索引和优化,使用where; 暂时使用; 使用filesort

哪些表和列应该有索引?我有一个关于flow_permanent_id和entry_id的索引,但似乎是在使用filesort?

我该怎么做才能优化这个?

mysql> explain SELECT COUNT(*) AS count_all, entry_id AS entry_id FROM `votes` WHERE `votes`.`flow_permanent_id` = '4fab490cdc1c82cfa800000a' GROUP BY entry_id;
+----+-------------+-------+------+----------------------------------+----------------------------------+---------+-------+------+----------------------------------------------+
| id | select_type | table | type | possible_keys                    | key                              | key_len | ref   | rows | Extra                                        |
+----+-------------+-------+------+----------------------------------+----------------------------------+---------+-------+------+----------------------------------------------+
|  1 | SIMPLE      | votes | ref  | index_votes_on_flow_permanent_id | index_votes_on_flow_permanent_id | 74      | const |    1 | Using where; Using temporary; Using filesort |
+----+-------------+-------+------+----------------------------------+----------------------------------+---------+-------+------+----------------------------------------------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

mysql indexing group-by count filesort

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