小编Fiv*_*ell的帖子

用于从相同表中搜索的mysql存储过程

嗨开发人员我正在研究从许多具有相同结构的表中快速选择行的方法.表有太多数据不能成为1个表.所以每个表都包含1个月的数据.例如log_2011_01,log_2011_02等.表具有datetime列created_at.

我需要创建存储过程,它必须包含2个日期时间参数,用于在此日期和其他日期之间进行搜索.

现在我看到下一个实现:存储过程必须计算2个日期之间的表的集合,并生成sql以使用union_all选择数据.我想我会沉重而不准备高负荷,不是吗?还有其他可能吗?谢谢

mysql sql innodb stored-procedures

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

让PHP的XMLReader不会在无效文档中抛出php错误

我正在编写解析器,并尝试使用异常进行良好的错误处理.

以下示例代码:

<?php
$xml = <<<XML
<?xml version="1.0"?>
<rootElem>
XML;

$reader = new XMLReader();
$reader->xml($xml, null, LIBXML_NOERROR | LIBXML_NOWARNING);

$reader->read();
Run Code Online (Sandbox Code Playgroud)

发出:

PHP Warning:  XMLReader::read(): An Error Occured while reading in /Users/evert/code/xml/errortest.php on line 11
PHP Stack trace:
PHP   1. {main}() /Users/evert/code/xml/errortest.php:0
PHP   2. XMLReader->read() /Users/evert/code/xml/errortest.php:11
Run Code Online (Sandbox Code Playgroud)

增加:

libxml_use_internal_errors(true);
Run Code Online (Sandbox Code Playgroud)

没有效果.

我的目标是稍后(使用libxml_get_errors())检查错误,并抛出异常.我觉得唯一的解决方案是使用silence(@)运算符,但这似乎是一个坏主意..

请注意,当我不传递LIBXML常量,也不使用时libxml_use_internal_errors,我会得到一个不同的错误,例如:

PHP Warning:  XMLReader::read(): /Users/evert/code/xml/:2: parser error : Extra content at the end of the document in /Users/evert/code/xml/errortest.php on line 11
Run Code Online (Sandbox Code Playgroud)

这表明底层的libxml库确实压制了错误,但是在XMLReader中,无论如何都会抛出错误.

php xml xmlreader xml-parsing

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

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

Rails上的红宝石休息Api + oAuth

你好,亲爱的开发者!在Rails 3中使用rest api + oAuth有什么好处?

我在哪里可以找到身份验证的代码示例(服务器+客户端)

也许我应该使用一些不同的认证?主要的想法是客户可以通过restfull查询购买商品,我应该提供最高级别的可靠性

ruby ruby-on-rails oauth

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

ActiveMessaging生成器问题 - 不支持Rails 3

我有Activemessaging插件和rails3应用程序的问题.

我的gemfile是

gem 'sqlite3'
gem 'activemessaging', :git=>'git://github.com/spraints/activemessaging.git'
gem 'stomp'
gem 'daemons'
Run Code Online (Sandbox Code Playgroud)

之后,activemessaging文件夹出现在供应商中

捆绑安装后,我想用生成器创建处理器

 rails generate processor Test
Run Code Online (Sandbox Code Playgroud)

我看到这个输出:

ActiveMessaging: adapter reliable_msg not loaded: no such file to load -- reliable-msg
ActiveMessaging: adapter wmq not loaded: no such file to load -- wmq/wmq
ActiveMessaging: adapter beanstalk not loaded: no such file to load -- beanstalk-client
ActiveMessaging: no '/home/ruby/myapp/script/config/messaging.rb' file to load
ActiveMessaging: Loading script/app/processors/application.rb
Rails available: Adding dispatcher prepare callback.
ActiveMessaging: no '/home/ruby/myapp/script/config/messaging.rb' file to load
Could not find generator processor. …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails activemessaging ruby-on-rails-3

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

Ruby on Rails:向控制器添加第二个自定义视图(Rails 3)

Rails 3:

我对rails非常陌生,到目前为止它们都已经很好了但是我在理解所有这些路由方面遇到了一些麻烦.我现在正在尝试向控制器添加第二个视图,但我不想使用任何show,edit,index等操作.

我想为视图的自定义名称和控制器中的自定义操作.有人可以向我解释如何做到这一点.而且我真的想知道如何使用"link_to"方法从另一个视图链接到它.

任何帮助是极大的赞赏!

html controller ruby-on-rails view ruby-on-rails-3

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

Rails ActiveRelation来哈希

我需要哈希化ActiveRelation!例如,我有这样的AR

arel = MyClass.page(options[:page]).per(options[:per]) 
Run Code Online (Sandbox Code Playgroud)

这是一种简单的方法来创建散列,其中MyTable的主键作为散列中的键

EX1:

[#<Object id: 44, name: "name44" >, #<Object id: 2, name: "name2" >, #<Object id: 110, name: "name110">]
=>
{44=>"name44", 2=>"name2",110=>"name110"}
Run Code Online (Sandbox Code Playgroud)

EX2:

[#<Object id: 44, name: "name44" >, #<Object id: 2, name: "name2" >, #<Object id: 110, name: "name110">]
=>
{44=>{:id=>44, :name=>"name44", 2=>{:id=>2,:name=>"name2"},110=>{:id=>110,:name=>"name110"}}
Run Code Online (Sandbox Code Playgroud)

ruby activerecord active-relation ruby-on-rails-3

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

has_many与select关联

所有!我想创建额外的has_many关系以仅选择所需的列

class Price < ActiveRecord::Base
  self.table_name = "pricelist_prices"
  has_many :order_items, :primary_key=> :city_id, :foreign_key=> :city_id
  has_many :orders, :through => :order_items   
end
Run Code Online (Sandbox Code Playgroud)

所以它现在有效.但我想创建一个类似于:orders的关联,但有:select选项

has_many :orders, :through => :order_items, :select=>"price"
Run Code Online (Sandbox Code Playgroud)

但我不想覆盖当前:订单协议.这该怎么做?

UPD Azoto显示带有源选项的示例!没关系,但是当我在include中使用这个accotiation时,它不起作用.

 Price.where(:id=>[12759,12758]).includes(:prices_from_orders)
   (Object doesn't support #inspect)

   Price.where(:id=>[12759,12758]).includes(:prices_from_orders).first
NoMethodError: undefined method `each' for nil:NilClass
    from /Users/igorfedoronchuk/.rvm/gems/ruby-1.9.2-p180@new/gems/activerecord-3.2.1/lib/active_record/associations/preloader/association.rb:88:in `block in associated_records_by_owner'
Run Code Online (Sandbox Code Playgroud)

UPD2

我意识到问题,如果你想在include方法中使用这样的assotioation,还要添加primary_key选择,否则AR不知道谁是记录的拥有者.

has_many :orders, :through => :order_items, :select=>"id, price"
Run Code Online (Sandbox Code Playgroud)

ruby activerecord ruby-on-rails active-relation ruby-on-rails-3

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

视图中每页显示的行数限制

我在哪里可以找到有关如何限制 rails 在视图中显示的行数的教程?

pagify 选项也很酷……谢谢。

ruby pagination rubygems ruby-on-rails

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