LINUX.ORG.RU

Сообщения ZuBB

 

Помогите «приготовить» activerecord statement

Форум — Web-development

понадобилось добавить еще пару условий для select`а. но так как все условия у меня опциональны, я все пихаю в хеш, и подчищаю его перед тем как скармливаю where`ру. но для условий типа '>=' такой фокус не проходит. гугл мне подсказал о Squeel. но он чето не колется

NoMethodError (undefined method `gteq' for :price:Symbol)

а с другой стороны я посмотрел на код, который уже есть и мне мое програмерское чувство эстетики сказало «you are doing it wrong». поэтому я пришел к вам, боги Р^HЖД и красных камней за мудрыми советами.

прошу извинить меня за стиль изложения, ибо пятница была редкой но меткой.

      format.json do                                                            
        order = [                                                               
          ["rooms", "ASC"],                                                     
          ["apartment_type_id", "ASC"],                                         
          ["floor_num", "ASC"],                                                 
          ["space", "DESC"],                                                    
          ["created_at", "DESC"],                                               
        ]                                                                       
                                                                                
        query_params = {                                                        
          :price => {},                                                         
          :floor_num => {},                                                     
          :rooms => params[:rooms],                                             
          :district_id => params[:district_id],                                 
                                                                                
          :agent_id => params[:agent_id],                                       
          :ad_type_id => params[:ad_type_id],                                   
          :ad_status_id => params[:ad_status_id],                               
          :realty_type_id => params[:realty_type_id],                           
        }                                                                       
                                                                                
        if params['price-min']                                                  
            query_params[:price][:price.gteq] = params['price-min']             
        end                                                                     
        if params['price-max']                                                  
            query_params[:price][:price.lteq] = params['price-max']             
        end                                                                     
                                                                                
        if params['floor-min']                                                  
            query_params[:floor_num][:floor_num.gteq] = params['floor-min']     
        end                                                                     
        if params['floor-max']                                                  
            query_params[:floor_num][:floor_num.lteq] = params['floor-max']     
        end                                                                     
                                                                                
        # FIXME js null here                                                    
        if query_params[:agent_id].include?('null')                             
          index = query_params[:agent_id].index { |item| item == 'null' }       
          query_params[:agent_id][index] = nil                                  
        end                                                                     
                                                                                
        # fix for empty items                                                   
        query_params.delete_if { |key, value| value.nil? || value.empty? }      
                                                                                
        p query_params                                                          
                                                                                
        render json: Advert                                                     
            .where(query_params)                                                
            .order(order.map {|o| o.join(' ')}.join(', '))                      
            .map { |advert| expand_advert_object(advert) }                      
      end                                                                       

 , , squeel,

ZuBB
()

Уберите статью с вики

Форум — Linux-org-ru

www.linux.org.ru/wiki/en/Windows

популярная прошивка для игр

ноутбуки продаются с предустановленным дистрибутивом

Разрабатывается малым количеством людей

В каждый новый дистрибутив включено несколько красивых обоев

Вам мало толксов?

 ,

ZuBB
()

хромобук с тач ретина-экраном

Форум — Talks

 , , ,

ZuBB
()

К блоку с кодом не применяются padding/margin, если он в елементе списка

Форум — Linux-org-ru

 

ZuBB
()

Нужна пара советов о локализации

Форум — Web-development

есть небольшое приложение написанное с помощью RoR. Пока в нем каша из en/ua строчек

что нужно/есть/ньюансы

  • пока нужна только украинская локаль (ua/uk_UA)
  • очень желательно чтобы локаль ни в каком виде не присутствовала в строке адреса
  • ну если вдруг мне понадобится добавить еще локаль/-ей чтобы сие не было проблемой
  • как быть с ошибками, которые кидает RoR (в особенности ActiveRecord)? можна ли что бы они были на англ, если нет для них укр?
  • как быть с данными которые можут изменятся пользователем, но в тоже время дожны быть локализованы
    mysql> select * from building_material_types;
    +----+--------------+---------------------+---------------------+
    | id | name         | created_at          | updated_at          |
    +----+--------------+---------------------+---------------------+
    |  1 | панелі       | 2013-01-24 01:10:43 | 2013-01-24 01:10:43 |
    |  2 | цегла        | 2013-01-24 01:10:54 | 2013-01-24 01:10:54 |
    |  3 | блок         | 2013-01-24 01:11:20 | 2013-01-24 01:11:20 |
    +----+--------------+---------------------+---------------------+
    3 rows in set (0.00 sec)
    
    Кстати меня никак не покидает мысль что именно здесь я что-то глобальное сделал не так..

Жду дельных советов

 ,

ZuBB
()

Пара вопросов о wget

Форум — General

1. Почему response headers

vv@vv-Latitude-E5520 ~ $ wget -Snv -t 1 -T 30 ya.ru -O /dev/null
  HTTP/1.1 200 Ok
  Server: nginx
  Date: Wed, 06 Feb 2013 10:22:30 GMT
  Content-Type: text/html; charset=UTF-8
  Connection: close
  Cache-Control: no-cache,no-store,max-age=0,must-revalidate
  Content-Length: 5024
  Expires: Wed, 06 Feb 2013 10:22:31 GMT
  Last-Modified: Wed, 06 Feb 2013 10:22:31 GMT
  P3P: policyref="/w3c/p3p.xml", CP="NON DSP ADM DEV PSD IVDo OUR IND STP PHY PRE NAV UNI"
  Set-Cookie: yandexuid=696592141360146151; Expires=Sat, 04-Feb-2023 10:22:30 GMT; Domain=.ya.ru; Path=/
  X-Frame-Options: DENY
  X-XRDS-Location: http://openid.yandex.ru/server_xrds/
2013-02-06 12:22:30 URL:http://ya.ru/ [5024/5024] -> "/dev/null" [1]
vv@vv-Latitude-E5520 ~ $ 
принадлежит к информации типа error
vv@vv-Latitude-E5520 ~ $ wget -Snv -t 1 -T 30 ya.ru -O /dev/null 2>/dev/null
vv@vv-Latitude-E5520 ~ $ 

2. почему выхлоп failed: Connection timed out.

vv@vv-Latitude-E5520 ~ $ wget -t 1 -T 30 http://subforge.org/projects/subtle/wiki -O /dev/null
--2013-02-06 12:18:46--  http://subforge.org/projects/subtle/wiki
Resolving subforge.org (subforge.org)... 194.94.124.199
Connecting to subforge.org (subforge.org)|194.94.124.199|:80... failed: Connection timed out.
Giving up.

vv@vv-Latitude-E5520 ~ $
не считается ошибкой
vv@vv-Latitude-E5520 ~ $ wget --no-verbose -t 1 -T 30 http://subforge.org/projects/subtle/wiki -O /dev/null
vv@vv-Latitude-E5520 ~ $ 
ведь
       -nv
       --no-verbose
           Turn off verbose without being completely quiet (use -q for that),
           which means that error messages and basic information still get
           printed.

upd: version 1.13.4

 

ZuBB
()

rails приложение не видит jquery

Форум — Web-development

в определенный момент оно сломалось.. log

Started GET "/" for 127.0.0.1 at 2013-02-02 12:18:37 +0200
Processing by HomeController#index as HTML
  Rendered home/index.html.erb within layouts/application (0.1ms)
  Rendered layouts/_header.html.erb (0.1ms)
  Rendered layouts/_navigation.html.erb (3.0ms)
Completed 500 Internal Server Error in 59ms

ActionView::Template::Error (couldn't find file 'jquery'
  (in /home/vv/work/own/ruby/reard/app/assets/javascripts/application.js:13)):
    30:         </div>
    31:     </div>
    32: 
    33:     <%= javascript_include_tag "application" %>
    34: </body>
    35: </html>
  app/views/layouts/application.html.erb:33:in `_app_views_layouts_application_html_erb___92547131_88237250'


  Rendered /var/lib/gems/1.9.1/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.0ms)
  Rendered /var/lib/gems/1.9.1/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.7ms)
  Rendered /var/lib/gems/1.9.1/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/template_error.erb within rescues/layout (5.5ms)

application.js

// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.                                                                
//                                                                              
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
//                                                                              
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.                                                           
//                                                                              
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
// GO AFTER THE REQUIRES BELOW.                                                 
//                                                                              
//= require jquery                                                              
//= require jquery_ujs                                                          
//= require_tree .                                                              
//= require ../../../vendor/assets/javascripts/bootstrap                        
//= require ../../../vendor/assets/javascripts/jquery.selectboxit               
//= require jquery.ui.all                                                       
                                                                                
function blah() {
 // ... skipped

bundle install

vv@vv-Latitude-E5520 ~/work/own/ruby/reard $ bundle install | grep jquery
Using jquery-rails (2.2.0) 
Using jquery-ui-rails (3.0.1) 
vv@vv-Latitude-E5520 ~/work/own/ruby/reard $ 

где я накосячил?

 , ,

ZuBB
()

будет ли кто в Бельгии на FOSDEM?

Форум — Talks

В воскресенье на fosdem будет доклад о дебиане и системД. Будет ли там кто из лоровцев? Хочется узнать итоги так сказать из первьіх рук

https://fosdem.org/2013/schedule/event/debian_systemd/

 , ,

ZuBB
()

{хочется странного} обьеденить ячейки грида в вертикалный столбик

Форум — Web-development

сразу предупреждая что возможно заголовок не соотвествует тому что я хочунемного кривоват. поэтому я заготовил 3 схемы, надеюсь что из них все будет понятно

схема №1 — http://rghost.ru/43439110.view
схема №2 — http://rghost.ru/43439423.view
схема №3 — http://jsfiddle.net/gMmV2/ (js не пашет :) )

что хочется:

  • поставить textarea 'recial' в 4ю колонку и чтобы она не разрывала свою строчку (как в case #1), но была использовала высоту строчки №2 (как в case #2);
  • чтобы не пришлось делать отдельную подстроку для контента из ячеек №1-3х, ибо тогда они будут сжатыми (как в №2), чтобы расположение и ширина ячеек была такой же, как и в №1

вся фишка в том что ячейки x11-x13 иногда должны быть скрытыми, а ячейка x[12]4 всегда видимая

 , ,

ZuBB
()

Странный мусор при рендеринге

Форум — Development

есть такое

<%= render :partial => 'layouts/table', :locals => { :headers => ['Name', 'Actions'] } %>

и такое

<table class="table table-striped">                                             
    <thead>                                                                     
        <tr>                                                                    
            <%= headers.each do |header| %>                                     
                <th><%= header %></th>                                          
            <% end %>                                                           
        </tr>                                                                   
    </thead>                                                                    
    <tbody>                                                                     

а в результате на экране все что я хочу + какая то бяка

если вместо

<%= headers.each do |header| %>                                     
                <th><%= header %></th>                                          
            <% end %>

написать

                <th><%= headers[0] %></th>                                      
                <th><%= headers[1] %></th>                                      

то все ОК. но это же не дело. спецом написал такой враппер, что бы не писать вручную хидеры таблицы.

что это такое и как его убрать?

 , ,

ZuBB
()

Помогите понять и простить^W^W ошибку в Ruby

Форум — Development
irb(main):005:0* a = 'sys-apps/sandbox-2.6'
=> "sys-apps/sandbox-2.6"
irb(main):006:0> version = '2.6'
=> "2.6"
irb(main):007:0> 
irb(main):008:0* a.match(/-#{version}$/)
=> #<MatchData "-2.6">
irb(main):009:0> a.slice!(/-#{version}$/, '')
IndexError: undefined group name reference: 
	from (irb):9:in `slice!'
	from (irb):9
	from /usr/bin/irb:12:in `<main>'
irb(main):010:0> 

 ,

ZuBB
()

Посоветуйте FS с размером блока меньше 1кб

Форум — General

Собственно интересует вопрос из темы. Есть 2 небольших условия

  • она должа быть в ядре не позднее 3.0 (ну на крайняк 2.6.32)
  • если она все таки существует в виде патча - то чтобы был какой то патч-сет, который ее уже включает (как пример pf-kerner, zen-kerner, geek-sources)

 block size, , ,

ZuBB
()

Создай алгоритм для Международной Космической Станции и выиграй $10k

Форум — Talks

НАСА совместно с порталом TopCoder объявило конкурс ISS Longeron Challenge на оптимизацию алгоритмов движения солнечных панелей для той самой МКС (Международная Космическая Станция). Срок конкурса: от 16 января до 6 февраля 2013 года.

http://gagadget.com/software/2013-01-24-sozdaj-algoritm-dlya-mezhdunarodnoj-k...

 ,

ZuBB
()

Охапка нубских вопросов при разработке проекта c помощью RoR

Форум — Development

Делаю один проект, зашел в тупик. есть куча вопросов, а гугл не колется. поетому решил упростить задачу

создал новый ресурс следующей коммандой

rails generate scaffold Person name:string phone:string notes:text personrole:references

получил следующую модель

class Person < ActiveRecord::Base                                               
  belongs_to :personrole                                                        
  attr_accessible :name, :notes, :phone                                         
end

пытаюсь в консольке поигратся

irb(main):031:0* p4 = Person.new({:name => 'vasja', :phone => '123456'})
=> #<Person id: nil, name: "vasja", phone: "123456", notes: nil, personrole_id: nil, created_at: nil, updated_at: nil>
irb(main):032:0> p4.save
   (0.3ms)  SAVEPOINT active_record_1
  Person Exists (0.3ms)  SELECT 1 AS one FROM `people` WHERE (`people`.`phone` = BINARY '123456' AND `people`.`name` = 'vasja') LIMIT 1
   (0.3ms)  ROLLBACK TO SAVEPOINT active_record_1
=> false
irb(main):033:0> Person.find(:all)
  Person Load (0.7ms)  SELECT `people`.* FROM `people` 
=> []
irb(main):034:0> 

Пока только два (дальше будет больше и заковырыстие) вопроса

  • почему «false»/Person Exists ?
  • откуда взялся BINARY

 ,

ZuBB
()

репорт о возможном баге с уведомлениями

Форум — Linux-org-ru

«как это было» ©™: в определенный момент мне понадобилось зайти в «Уведомления» чтобы еще раз посмотреть/прочитать что мне написали с утра. Соответственно в момент щелчка по ссылке «Уведомления» у меня после слова «Уведомления» (каламбур, я не специально) в шапке сайта ничего не было. Захожу в «Уведомления» и вижу что у меня появилось новое уведомление (подписан на тег 'svn'). Уверен что новое ибо ссылка не visited + есть точка возле названия топика. Открываю две ссылки (та что мне нужна была и новый тред) в отдельных табах. В табе с новым тредом отвечаю на ОП и возвращаюсь к своим делам. Вспоминаю о том что я собирался еще раз посмотреть что мне написали. Читаю то что мне нужно было, иду дальше по треду, перехожу на новую страницу и вижу что у меня 2 уведомления. Открываю ссылку уведомления в новом табе и вижу что у меня 1 (одно!) новое уведомление (человек мне отписал в треде о свн).

 

ZuBB
()

пара послеустaновочных(,странных) вопросов о LUbuntu

Форум — General

вводная: есть очень старый комп, на который я возгрузил последнюю lubuntu и собираюсь его отдать родственникам для просмотров интернетов.

но есть 3 «но»:

  • на том компе видеокарта — Nvidia, а конкретно
    bogdan@lubuntu:~$ lspci | grep -i vga
    01:00.0 VGA compatible controller: NVIDIA Corporation NV11 [GeForce2 MX/MX 400] (rev a1)
    bogdan@lubuntu:~$ 
    
    вопрос: какой драйвер и как установить в этих ваших недоубунтах? (диалог с closed source firmware здесь не повлялся и в меню нет)
  • как быть с апдейтами? если устанавливать их в фоне не спрашивая пользователя мне будут жаловатся что комп почему то тормозит. Но это еще пол беды. Если security апдейты можно ставить в фоне не спрашивая пользователя, то обычные нельзя ставить не спрашивая пользователя (или я не нашел как). В общем хочется какого то полностью автоматического варианта с возможностью указать время установки
  • flash. вроде как установлен, но в яндекс-картах панорамы не пашут.

 

ZuBB
()

поймал винч за «созданием музыки». он уже того?

Форум — Linux-hardware

есть лаптоп dell latitude e5520 (Device Model: ST9500423AS) (~1год и 3месяца) + Xubuntu 12.04

сегодня после запуска тяжелой задачи (CPU + IO (все данные в ramdisk`e)) винт издал очень странные периодические звуки (немного погодя постараюсь записать их и выложить). Такого я еще от него не слышал :)

На время запуска ноут был отключен от розетки.

сделал

smartctl -a /dev/sda
полный выхлоп здесь. таблица с собственно данными ниже

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   117   099   006    Pre-fail  Always       -       117624264
  3 Spin_Up_Time            0x0003   097   097   085    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       887
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   075   060   030    Pre-fail  Always       -       35961334
  9 Power_On_Hours          0x0032   092   092   000    Old_age   Always       -       7243
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       390
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   051   035   045    Old_age   Always   In_the_past 49 (1 102 49 24)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       1669
193 Load_Cycle_Count        0x0032   095   095   000    Old_age   Always       -       10848
194 Temperature_Celsius     0x0022   049   065   000    Old_age   Always       -       49 (0 8 0 0)
195 Hardware_ECC_Recovered  0x001a   117   099   000    Old_age   Always       -       117624264
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       128209068760011
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       1888384511
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       4103638784
254 Free_Fall_Sensor        0x0032   001   001   000    Old_age   Always       -       32

самое плохое что я понял это температура

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
190 Airflow_Temperature_Cel 0x0022   051   035   045    Old_age   Always   In_the_past 49 (1 102 49 24)
194 Temperature_Celsius     0x0022   049   065   000    Old_age   Always       -       49 (0 8 0 0)

Вопросы:

  • пациент скорее жив или мертв?
  • если жив, то нужно ли что то кроме температуры подкрутить?
  • если мертв, то ск приблизительно мне осталось?

спасибо

UPD: звуки. особенно слышно начиная с 1:00

 , ,

ZuBB
()

{fun}How GIT commands would look like if they were animals?

Форум — Talks

http://git-animals.tumblr.com

// извините, не удержался

 , ,

ZuBB
()

Разыскивается пачка дистрибутивов/сборок для тестирования.

Форум — General

После тестирования одного и того самого кода (в коде нет ничего специфического, окромя работи с сокетами) на 2 ноутах (ubuntu и gentoo) и паре виртуалок выяснилось следующее

  • ноут dell latitude e5520 (1 год) c ubuntu - код отрабатывает быстрее всего (15мс)
  • ноут toshiba satellite m100-221 (5,5 год) c генту (1 год не обновлялась) - код отрабатывает медленнее всего (~2с; гусары молчать!)
  • виртуалка с 12.04 - код отрабатывает в 2 раза медленнее №1 (спишем на виртуалку)
  • виртуалка c генту - код отрабатывает за ~0.5с

виртуалка с генту была скачана из сети. кто и как ее настраивал я хз. Генту на лаптопе настраивал я. Должен сказать что я очень большой любитель выключить непонятную галочку в настройках ядра. Был?

Дабы исключить плохую конфигурацию сетевого стека в ядре насоветуйте дистров/сборок которые

  • не построены на базе дебиана/убунту (я полагаю что ядро в них почти? одинаковое)
  • «livecd», которого можно залить (не установить) на флешку (устанавливать 100500 дистров я не собираюсь)
  • (наверно это будет самое сложное) в котором можна доустановить нужное мне ПО. например как в LiveDVD «End Of World Edition»

    В сборке используется файловая система AUFS с поддержкой записи поверх основы, доступной только на чтение, что позволяет устанавливать дополнительные пакеты.

Если знаете какие-то дистры, в которых декларируется какой-то особый тюнинг сетевого стека - также советуйте

 ,

ZuBB
()

Я его убил :(

Форум — Talks

Наверно все-таки что случилось 21го ибо я впервые в своей жизни «положил» интерпретатор. Подробности по ссылке. Кстати в той самой 18й строчке банальный до невозможности вызов Random.rand (правда в подпроцессе)

вот так вот

upd: sources

 ,

ZuBB
()

RSS подписка на новые темы