小编Seb*_*ien的帖子

在rails中构建多个过滤器的最佳方法

我想为我的一个模型构建带有轨道的动态过滤器,但我不知道最好的方法.

我的模型是事件女巫有一个大陆,一个国家一个月.

所以我希望能够找到一个包含多个过滤器的事件.例如,"发现二月份的欧洲所有活动"

什么是最好的方法.我必须在我的Event模型中创建一个函数findByfilter

谢谢你的回答,欢迎大家光临!

(我用轨道3)

ruby ruby-on-rails filter

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

错误:CoreData:错误:无法在NSManagedObject类'Product'上调用指定的初始值设定项

我开始使用ios 5的核心数据.我有我的产品型号:

Product.m:

#import "Product.h"
@implementation Product
    @dynamic category_id;
    @dynamic label;
    @dynamic price;
@end
Run Code Online (Sandbox Code Playgroud)

Product.h:

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@interface Product : NSManagedObject 
  @property (nonatomic, retain) NSString *category_id;
  @property (nonatomic, retain) NSString *label;
  @property (nonatomic, retain) NSString *price;
@end
Run Code Online (Sandbox Code Playgroud)

我尝试使用NSXMLParserDelegate解析带有自定义类的xml.我的xml看起来像:

<section id="2">
  <label>Animaux</label>
  <image>Images/Rayons/Bandeau/Animaux.png</image>
  <key>Images/Rayons/Bandeau/Animaux.png</key>
  <products>
     <Product id="21">
        <category_id>Chat</category_id>
        <label>Aliments pour chat</label>
        <price>2.00</price>
     </Product>
     <Product id="1286">
        <category_id>Chat</category_id>
        <label>Boite de paté</label>
        <price>0.00</price>
     </Product>
  </products>
</sections>
Run Code Online (Sandbox Code Playgroud)

当我有一个balise产品时,我会像这样构建我的模型:

item = [[NSClassFromString(className) alloc] init];
Run Code Online (Sandbox Code Playgroud)

当我有一个property_id属性时,我会这样做:

[item setValue:currentNodeContent forKey:elementName];
Run Code Online (Sandbox Code Playgroud)

我收到了错误:

CoreData:错误:无法在NSManagedObject类'Product'上调用指定的初始值设定项

任何的想法?

core-data objective-c ios5

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

无法在产品集合上使用type_id加载和过滤

我想覆盖目录/图层模型的函数prepareProductCollection($ collection).

因为,我只想展示简单的产品,所以我想做:

 public function prepareProductCollection($collection)
    {
        $collection
           ->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
           ->addMinimalPrice()
           ->addFinalPrice()
           ->addTaxPercents()
           ->addUrlRewrite($this->getCurrentCategory()->getId());

        Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
        Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);

        $collection
         ->addAttributeToSelect('type_id')
         ->addAttributeToFilter('type_id','simple');
       echo $collection->getSelect()->__toString();

    }
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我有这个错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'e.type_id' in 'where clause'

Trace:
#0 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#1 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#2 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#3 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SELECT FLOOR((R...', Array)
#4 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('SELECT FLOOR((R...', Array)
#5 /Users/Ditchou/Documents/ProjetsWeb/lolote/lib/Zend/Db/Adapter/Abstract.php(808): Varien_Db_Adapter_Pdo_Mysql->query(Object(Varien_Db_Select), Array)
#6 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Resource/Layer/Filter/Price.php(274): Zend_Db_Adapter_Abstract->fetchPairs(Object(Varien_Db_Select))
#7 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Price.php(158): Mage_Catalog_Model_Resource_Layer_Filter_Price->getCount(Object(Mage_Catalog_Model_Layer_Filter_Price), 10)
#8 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Price.php(115): Mage_Catalog_Model_Layer_Filter_Price->getRangeItemCounts(10)
#9 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Price.php(314): Mage_Catalog_Model_Layer_Filter_Price->getPriceRange()
#10 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Abstract.php(151): Mage_Catalog_Model_Layer_Filter_Price->_getItemsData()
#11 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Abstract.php(120): Mage_Catalog_Model_Layer_Filter_Abstract->_initItems()
#12 /Users/Ditchou/Documents/ProjetsWeb/lolote/app/code/core/Mage/Catalog/Model/Layer/Filter/Abstract.php(109): Mage_Catalog_Model_Layer_Filter_Abstract->getItems()
#13 …
Run Code Online (Sandbox Code Playgroud)

magento

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

编写一个参考模型的迁移两次

我有一个消息模型(Message),这个模型作为userTo和userFrom,所以两个引用User.我该如何编写迁移?我的用户模型是User.

谢谢

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

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

当我使用模板时,我的文字写得不好

我想使用Rails在现有PDF上添加文本,所以我做了:

filename = "#{Rails.root}/app/assets/images/sample.pdf"
Prawn::Document.generate("#{Rails.root}/app/assets/images/full_template.pdf", :template => filename) do
  text "Test", :align => :center
end
Run Code Online (Sandbox Code Playgroud)

当我打开full_template.pdf时,我的模板PDF +我的文本"Test",但是这个文本写得不好,好像我的文本是用镜子写的.

您可以在此处找到两个PDF文档:

原文:http: //www.sebfie.com/wp-content/uploads/sample.pdf

生成:http: //www.sebfie.com/wp-content/uploads/full_template.pdf

pdf pdf-generation prawn ruby-on-rails-3

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

获取两个日期之间的月份名称

我必须使用Ruby在两个日期之间按顺序获取所有月份名称.例如,我想得到:

['jan','feb','mars']
Run Code Online (Sandbox Code Playgroud)

当我在之间进行差异时:

1st january and March 15th
Run Code Online (Sandbox Code Playgroud)

我也希望它在日期差异大于一年时起作用.

任何的想法?

ruby ruby-on-rails date

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

在开发模式下,Rails不为nginx提供资源

我在Debian 6中使用虚拟机.我在前面有nginx来提供静态文件('jpg,png,css,js ...)和apache来运行脚本.

但我有一个问题,我的资产文件出现404错误.

我的nginx配置:

server {
  listen      80;
  server_name mysite ;

  #access_log  /var/log/nginx/access.mysite.log;
  #error_log   /var/log/nginx/error.mysite.log;


  # Les requêtes sont transmises au processus Apache écoutant en local sur le port 81
  location / {
    proxy_pass         http://127.0.0.1:81/;
    include  /etc/nginx/proxy.conf;
  }

  # On remap sur la racine du domaine
  if ($host != "mysite"){
        rewrite ^(.*)$ http://mysite$1 permanent;
        break;
      }

  # On distribue les fichiers statiques directement
  location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|txt|srt|swf)$ {
    root  /home/php/mysite/public;
    #access_log  /var/log/nginx/access.mysite.log;
    #error_log   /var/log/nginx/error.mysite.log;
    expires           1d;
  }
}
Run Code Online (Sandbox Code Playgroud)

我的apache配置:

 <VirtualHost …
Run Code Online (Sandbox Code Playgroud)

ruby assets ruby-on-rails

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

如何在Nokogiri中使用SAX?

我想解析一个非常大的文件240Mb,并且必须SAX以避免将文件加载到内存中.

我的XML看起来像:

<?xml version="1.0" encoding="utf-8"?>
<hotels>
  <hotel>
    <hotelId>1568054</hotelId>
    <hotelFileName>Der_Obere_Wirt_zum_Queri</hotelFileName>
    <hotelName>"Der Obere Wirt" zum Queri</hotelName>
    <rating>3</rating>
    <cityId>34633</cityId>
    <cityFileName>Andechs</cityFileName>
    <cityName>Andechs</cityName>
    <stateId>212</stateId>
    <stateFileName>Bavaria</stateFileName>
    <stateName>Bavaria</stateName>
    <countryCode>DE</countryCode>
    <countryFileName>Germany</countryFileName>
    <countryName>Germany</countryName>
    <imageId>51498149</imageId>
    <Address>Georg Queri Ring 9</Address>
    <minRate>85.9800</minRate>
    <currencyCode>EUR</currencyCode>
    <Latitude>48.009423000000</Latitude>
    <Longitude>11.214504000000</Longitude>
    <NumberOfReviews>16</NumberOfReviews>
    <ConsumerRating>4.25</ConsumerRating>
    <PropertyType>0</PropertyType>
    <ChainID>0</ChainID>
    <Facilities>1|3|5|8|22|27|45|49|53|56|64|66|67|139|202|209|213|256|</Facilities>
  </hotel>
  <hotel>
    <hotelId>1658359</hotelId>
    <hotelFileName>Seclusions_of_Yallingup</hotelFileName>
    <hotelName>"Seclusions" of Yallingup</hotelName>
    <rating>4</rating>
    <cityId>72257</cityId>
    <cityFileName>Yallingup</cityFileName>
    <cityName>Yallingup</cityName>
    <stateId>172</stateId>
    <stateFileName>Western_Australia</stateFileName>
    <stateName>Western Australia</stateName>
    <countryCode>AU</countryCode>
    <countryFileName>Australia</countryFileName>
    <countryName>Australia</countryName>
    <imageId>53234107</imageId>
    <Address>58 Zamia Grove</Address>
    <minRate>218.1825</minRate>
    <currencyCode>AUD</currencyCode>
    <Latitude>-33.691192000000</Latitude>
    <Longitude>115.061938999999</Longitude>
    <NumberOfReviews>0</NumberOfReviews>
    <ConsumerRating>0</ConsumerRating>
    <PropertyType>3</PropertyType>
    <ChainID>0</ChainID>
     <Facilities>3|6|13|14|21|22|28|39|40|41|51|53|54|56|57|58|65|66|141|191|202|204|209|210|211|292|</Facilities>
  </hotel>
  <hotel>
    <hotelId>1491947</hotelId>
    <hotelFileName>1_Melrose_Blvd</hotelFileName>
    <hotelName>#1 Melrose Blvd</hotelName>
    <rating>5</rating>
    <cityId>964</cityId>
    <cityFileName>Johannesburg</cityFileName>
    <cityName>Johannesburg</cityName> …
Run Code Online (Sandbox Code Playgroud)

xml sax nokogiri ruby-on-rails-3

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

翻译设计登录链接

我使用此链接将登录链接放在我的应用程序上:

https://github.com/plataformatec/devise/wiki/How-To:-Add-sign_in,-sign_out,-and-sign_up-links-to-your-layout-template
Run Code Online (Sandbox Code Playgroud)

我还为法语添加了一个翻译文件:

https://gist.github.com/871074
Run Code Online (Sandbox Code Playgroud)

我要求rails使用french作为默认值:

 config.before_configuration do
   I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
   I18n.locale = :fr
   I18n.default_locale = :fr
   config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
   config.i18n.locale = :fr
   # bypasses rails bug with i18n in production\
   I18n.reload!
   config.i18n.reload!
end

config.i18n.locale = :fr
config.i18n.default_locale = :fr
Run Code Online (Sandbox Code Playgroud)

但是我的按钮/标签没有翻译:

<div><%= f.check_box :remember_me %> <%= f.label :remember_me %></div>
Run Code Online (Sandbox Code Playgroud)

它写"记住我",但我想要法语翻译.

我做错了什么?

谢谢

ruby-on-rails devise ruby-on-rails-3

3
推荐指数
2
解决办法
2678
查看次数

使用activeadmin创建一行颜色

如果模型具有:updated = true,我想在索引页面上以红色显示一行.我怎么能用activeadmin做到这一点?

谢谢

ruby-on-rails ruby-on-rails-3 activeadmin

3
推荐指数
2
解决办法
4807
查看次数