Результаты поиска
Реализация функции "Remember me" в приложении Rails
В моем Rails-приложении есть поле входа с "remember me" checkbox. Пользователи, установившие этот флажок, должны оставаться в системе даже после закрытия браузера. Я отслеживаю, входят ли пользователи в систему, сохраняя их идентификатор в сеансе пользователя.
Но сеансы реализуются в Rails как сеансовые файлы cookie, которые не являются постоянными. Я могу сделать их настойчивыми:
class ApplicationController < ActionController::Base
before_filter :update_session_expiration_date
private
def update_session_expiration_date
options = ActionController::Base.session_options
unless options[:session_expires]
options[:session_expires] = 1.year.from_now
end
end
end
Но это похоже на взлом, что удивительно для такой распространенной функциональности. Есть ли какой-нибудь лучший способ?
Редактировать
Ответ Гарета довольно хорош, но я все равно хотел бы получить ответ от кого-то, кто знаком с Rails 2 (потому что он уникален CookieSessionStore ).
Частые SystemExit в Ruby при совершении HTTP звонков
У меня есть сайт Ruby on Rails, который делает HTTP вызовов к внешней веб-службе.
Примерно раз в день я получаю ошибку SystemExit (stacktrace ниже) email, когда вызов службы не удался. Если я затем попробую точно такой же запрос на моем сайте через несколько минут, он отлично работает. Это происходит с тех пор, как сайт вышел в эфир, и мне не удалось отследить, что вызывает его.
Ruby-это версия 1.8.6, а rails-версия 1.2.6.
У кого-нибудь еще есть эта проблема?
Это ошибка и stacktrace.
В SystemExit произошло /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/fcgi_handler.rb:116:in выход' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/fcgi_handler.rb:116:in exit_now_handler' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in to_proc' /usr/local/lib/ruby/1.8/net/protocol.rb:133:in называть /usr/local/lib/ruby/1.8/net/protocol.rb:133:in sysread' /usr/local/lib/ruby/1.8/net/protocol.rb:133:in rbuf_fill' /Таймаут usr/local/lib/ruby/1.8/timeout.rb:56:in' /Таймаут usr/local/lib/ruby/1.8/timeout.rb:76:in' /usr/local/lib/ruby/1.8/net/protocol.rb:132:in rbuf_fill' /Readuntil usr/local/lib/ruby/1.8/net/protocol.rb:116:in' / usr/local/lib/ruby/1.8/net/protocol.rb:126:in readline' /usr/local/lib/ruby/1.8/net/http.rb:2017:in read_status_line' /usr/local/lib/ruby/1.8/net/http.rb:2006:in read_new' / usr/local/lib/ruby/1.8/net/http.rb:1047:in запрос' /usr/local/lib/ruby/1.8/net/http.rb:945:in request_get' /usr/local/lib/ruby/1.8/net/http.rb:380:in get_response' / usr/local/lib/ruby/1.8/net/http.rb:543:in начало' /usr/local/lib/ruby/1.8/net/http.rb:379:in get_response'
Как исправить ошибку "Unprocessed view path found" с плагином ExceptionNotifier в rails 2.1?
После обновления веб-сайта rails 1.2 до 2.1 плагин ExceptionNotifier больше не работает, жалуясь на эту ошибку:
ActionView::TemplateFinder::InvalidViewPath: необработанный путь представления найдено: "/path/to/appname/vendor/plugins/exception_notification/lib/../views". Задайте пути просмотра с помощью #append_view_path, #prepend_view_path, или #view_paths=.
Что вызывает это и как я могу это исправить?
Как продать Python в client/boss/person
Когда вас просят создать систему XYZ и вы просите сделать это в Python над PHP или Ruby, какие основные функции вы можете упомянуть, когда они требуют от вас объяснения?
Обучение Ruby на Rails что-нибудь хорошее для Grails?
Моя компания находится в процессе запуска вниз по пути Grails. Причина этого заключается в том, что нынешние разработчики тяжело относятся к Java, но ощущают потребность в языке в стиле MVC для некоторых будущих проектов веб-разработки. Лично я пришел из мира дизайна / юзабилити, но по мере того, как я беру на себя больше ответственности "front-end", я начинаю чувствовать потребность в более интенсивном изучении языка, чтобы я мог кодировать некоторую логику, но особенно интерфейсный код для моего UIs и прочего.
Я пытался попасть в Python/Django лично, но просто никогда не тратил на это слишком много времени. Теперь, когда моя компания находится "jumping" в Grails, я купил " веб-разработку Agile с Rails (3 - е изд-бета)", и я начинаю входить в RoR . Я все еще хотел бы узнать Python в будущем или на стороне, но мой самый большой вопрос-это:
- Должен ли я изучать RoR и иметь более универсальный язык в моем "portfolio", зная, что мои RoR знания будут полезны и для моих потребностей Grails??
-OR-
- Должен ли я просто пропустить RoR и сосредоточиться на изучении Grails, который мне скоро понадобится для работы, и работать над изучением RoR/Django (Ruby/Python) позже?
В основном вопрос вращается вокруг полезности Grails в некорпоративной среде и сходства между Rails и Grails. (и это, пытаясь избежать столетней дискуссии о Python против Ruby (на Rails) :))
Обучение Ruby на Rails что-нибудь хорошее для Grails?
Моя компания находится в процессе запуска вниз по пути Grails. Причина этого заключается в том, что нынешние разработчики тяжело относятся к Java, но ощущают потребность в языке в стиле MVC для некоторых будущих проектов веб-разработки. Лично я пришел из мира дизайна / юзабилити, но по мере того, как я беру на себя больше ответственности "front-end", я начинаю чувствовать потребность в более интенсивном изучении языка, чтобы я мог кодировать некоторую логику, но особенно интерфейсный код для моего UIs и прочего.
Я пытался попасть в Python/Django лично, но просто никогда не тратил на это слишком много времени. Теперь, когда моя компания находится "jumping" в Grails, я купил " веб-разработку Agile с Rails (3 - е изд-бета)", и я начинаю входить в RoR . Я все еще хотел бы узнать Python в будущем или на стороне, но мой самый большой вопрос-это:
- Должен ли я изучать RoR и иметь более универсальный язык в моем "portfolio", зная, что мои RoR знания будут полезны и для моих потребностей Grails??
-OR-
- Должен ли я просто пропустить RoR и сосредоточиться на изучении Grails, который мне скоро понадобится для работы, и работать над изучением RoR/Django (Ruby/Python) позже?
В основном вопрос вращается вокруг полезности Grails в некорпоративной среде и сходства между Rails и Grails. (и это, пытаясь избежать столетней дискуссии о Python против Ruby (на Rails) :))
Почему sqlite3-ruby-1.2.2 не работает на OS X?
Я бегу
- OS X 10.5,
- Ruby 1.8.6,
- Rails 2.1,
- sqlite3-ruby 1.2.2
и я получаю следующую ошибку при попытке сгрести db:migrate на приложение, которое работает найти подключен к MySQL.
грабли прервана! нет такого файла для загрузки -- sqlite3 / database
Почему моя работа Cron не работает должным образом?
У меня есть работа cron на Ubuntu Hardy VPS, которая работает только наполовину, и я не могу понять, почему. Задание представляет собой сценарий Ruby, который использует mysqldump для резервного копирования базы данных MySQL, используемой приложением Rails, которая затем gzipped и загружается на удаленный сервер с помощью SFTP.
Файл gzip создается и копируется успешно, но это всегда нулевые байты. Тем не менее, если я запускаю команду cron непосредственно из командной строки, Она отлично работает.
Это задание cron:
PATH=/usr/bin
10 3 * * * ruby /home/deploy/bin/datadump.rb
Это datadump.rb:
#!/usr/bin/ruby
require 'yaml'
require 'logger'
require 'rubygems'
require 'net/ssh'
require 'net/sftp'
APP = '/home/deploy/apps/myapp/current'
LOGFILE = '/home/deploy/log/data.log'
TIMESTAMP = '%Y%m%d-%H%M'
TABLES = 'table1 table2'
log = Logger.new(LOGFILE, 5, 10 * 1024)
dump = "myapp-#{Time.now.strftime(TIMESTAMP)}.sql.gz"
ftpconfig = YAML::load(open('/home/deploy/apps/myapp/shared/config/sftp.yml'))
config = YAML::load(open(APP + '/config/database.yml'))['production']
cmd = "mysqldump -u #{config['username']} -p#{config['password']} -h #{config['host']} --add-drop-table --add-locks --extended-insert --lock-tables #{config['database']} #{TABLES} | gzip -cf9 > #{dump}"
log.info 'Getting ready to create a backup'
`#{cmd}`
# Strongspace
log.info 'Backup created, starting the transfer to Strongspace'
Net::SSH.start(ftpconfig['strongspace']['host'], ftpconfig['strongspace']['username'], ftpconfig['strongspace']['password']) do |ssh|
ssh.sftp.connect do |sftp|
sftp.open_handle("#{ftpconfig['strongspace']['dir']}/#{dump}", 'w') do |handle|
sftp.write(handle, open("#{dump}").read)
end
end
end
log.info 'Finished transferring backup to Strongspace'
log.info 'Removing local file'
cmd = "rm -f #{dump}"
log.debug "Executing: #{cmd}"
`#{cmd}`
log.info 'Local file removed'
Я проверил и перепроверил все пути, и они верны. Как sftp.yml (учетные данные SFTP), так и database.yml (учетные данные MySQL) принадлежат исполняющему пользователю (deploy) с разрешениями только на чтение для этого пользователя (chmod 400). Я использую 1.1.x версии net-ssh и net-sftp. Я знаю, что они не самые последние, но это то, с чем я знаком в данный момент.
Что может быть причиной сбоя задания cron?
Почему моя работа Cron не работает должным образом?
У меня есть работа cron на Ubuntu Hardy VPS, которая работает только наполовину, и я не могу понять, почему. Задание представляет собой сценарий Ruby, который использует mysqldump для резервного копирования базы данных MySQL, используемой приложением Rails, которая затем gzipped и загружается на удаленный сервер с помощью SFTP.
Файл gzip создается и копируется успешно, но это всегда нулевые байты. Тем не менее, если я запускаю команду cron непосредственно из командной строки, Она отлично работает.
Это задание cron:
PATH=/usr/bin
10 3 * * * ruby /home/deploy/bin/datadump.rb
Это datadump.rb:
#!/usr/bin/ruby
require 'yaml'
require 'logger'
require 'rubygems'
require 'net/ssh'
require 'net/sftp'
APP = '/home/deploy/apps/myapp/current'
LOGFILE = '/home/deploy/log/data.log'
TIMESTAMP = '%Y%m%d-%H%M'
TABLES = 'table1 table2'
log = Logger.new(LOGFILE, 5, 10 * 1024)
dump = "myapp-#{Time.now.strftime(TIMESTAMP)}.sql.gz"
ftpconfig = YAML::load(open('/home/deploy/apps/myapp/shared/config/sftp.yml'))
config = YAML::load(open(APP + '/config/database.yml'))['production']
cmd = "mysqldump -u #{config['username']} -p#{config['password']} -h #{config['host']} --add-drop-table --add-locks --extended-insert --lock-tables #{config['database']} #{TABLES} | gzip -cf9 > #{dump}"
log.info 'Getting ready to create a backup'
`#{cmd}`
# Strongspace
log.info 'Backup created, starting the transfer to Strongspace'
Net::SSH.start(ftpconfig['strongspace']['host'], ftpconfig['strongspace']['username'], ftpconfig['strongspace']['password']) do |ssh|
ssh.sftp.connect do |sftp|
sftp.open_handle("#{ftpconfig['strongspace']['dir']}/#{dump}", 'w') do |handle|
sftp.write(handle, open("#{dump}").read)
end
end
end
log.info 'Finished transferring backup to Strongspace'
log.info 'Removing local file'
cmd = "rm -f #{dump}"
log.debug "Executing: #{cmd}"
`#{cmd}`
log.info 'Local file removed'
Я проверил и перепроверил все пути, и они верны. Как sftp.yml (учетные данные SFTP), так и database.yml (учетные данные MySQL) принадлежат исполняющему пользователю (deploy) с разрешениями только на чтение для этого пользователя (chmod 400). Я использую 1.1.x версии net-ssh и net-sftp. Я знаю, что они не самые последние, но это то, с чем я знаком в данный момент.
Что может быть причиной сбоя задания cron?
OpenID аутентификация в Ruby на Rails
Я неофит с Ruby на Rails, но я создал несколько небольших приложений. В любом случае, я действительно заинтересован в OpenID и хотел бы реализовать аутентификацию OpenID и, возможно, некоторые вещи Sreg в приложении Rails. Все исследования, которые я провел, пришли к статьям, которые устарели или просто не работают для меня. Поскольку я так новичок в Rails, мне трудно отлаживать проблемы таким образом...
Как лучше всего реализовать OpenId в Rails?
Готов ли Ruby на Rails для предприятия?
Есть ли кто-нибудь, кто использует RoR для крупномасштабных, критически важных для бизнеса корпоративных приложений?
Существуют ли другие облегченные веб-фреймворки, основанные на динамических языках, которые люди используют для этих типов приложений?
Если вы не используете эти типы фреймворков приложений, что вас останавливает? Это просто инерция, связанная с любой крупной организацией IT. Являются ли проблемы скорости и стабильности этих структур достаточной проблемой, чтобы они компенсировали улучшение времени цикла разработки?
Что IDE использовать для разработки в Ruby на Rails на Windows?
Возможный Дубликат:
Какие Ruby IDE вы предпочитаете?
Возможный Дубликат:
Какие Ruby IDE вы предпочитаете?
Я вообще-то делал вещи на Microsoft .NET после окончания колледжа почти 2 года назад. Я просто начал смотреть на Ruby на Rails. Итак, какой редактор я должен использовать? Я использую Notepad++ прямо сейчас, но могу ли я получить отладку и т. д. каким-то образом?
Как Вы Защищаете database.yml?
В пределах Ruby на Rails приложения database.yml представляет собой обычный текстовый файл, который хранит учетные данные базы данных.
Когда я развертываю свои приложения Rails, у меня есть обратный вызов после развертывания в моем Capistrano рецепт, который создает символическую ссылку в каталоге приложения /config на файл database.yml. Сам файл хранится в отдельном каталоге, который находится вне стандартной структуры каталогов Capistrano /releases. Я chmod 400 файл, так что он читается только пользователем, который его создал.
- Достаточно ли этого, чтобы заблокировать его? А если нет, то чем еще вы занимаетесь?
- Кто-нибудь шифрует свои файлы database.yml?
Будучи как DRY, насколько это возможно в Ruby на Rails приложение
В настоящее время я использую удивительный плагин attachment-fu для приложения Rails, но как начинающий разработчик я никогда не сталкивался с сценарием, подобным тому, в котором я оказался.
По сути, я использую плагин attachment-fu на двух уровнях.
- Это для пользовательских аватаров в классе user.
- Это разрешить вложения файлов ( PDFs и т. д.) В системе обмена сообщениями.
Мой вопрос заключается в том , какой наилучшей практикой использования было бы в этих ситуациях оставаться DRY , ясным и последовательным.
Очевидно, что нет смысла определять и выполнять плагин в обоих классах, но есть что-то очень странное для меня (возможно, необоснованное) о том, чтобы просто идти вперед и настраивать все это в классе божественного приложения.
Есть ли что-то между ними, или родительский класс-это путь?
Спасибо!
Какие-либо советы по получению Rails для запуска с доступом к бэк-энду?
Я содрогаюсь, чтобы спросить, но мой клиент не может предложить никакого другого решения SQL (или SQL-подобного). Я знаю, что доступ имеет некоторые крючки SQL; достаточно ли их для базового ActiveRecord?
Позже:
Я ценю все предложения использовать другие базы данных, но поверьте мне: я пытался убедить их. Существует список "approved", и в нем нет баз данных SQL. Включение чего-то в список может занять больше года, и этот проект будет завершен через три недели.
Связывание ключевых слов источника и поиска с созданием учетной записи
В рамках процесса регистрации для моего онлайн-приложения я думаю о отслеживании источника и / или ключевых слов поиска, используемых для доступа к моему сайту. Это позволит мне увидеть, что реклама работает и откуда с несколько более тонким зерном, чем Google Analytics.
Я предполагаю, что могу установить какой-то файл cookie с этой информацией, когда люди попадают на мой сайт, но я не уверен, как я буду его получать. Это вообще возможно?
Я использую Rails, но независимое от языка решение (или даже просто указатели на то, где найти эту информацию) будет оценено!
Acts-as-readable Rails проблема плагина
Я использую Intridea в качестве читаемого плагина Rails для системы обмена сообщениями, которую я сейчас создаю. Я определил свой класс сообщений соответственно:
class Post < ActiveRecord::Base
acts-as-readable
end
И все, кажется, работает по плану, но при попытке заставить приложение показывать непрочитанные сообщения в моем представлении сообщений, я сталкиваюсь с проблемами.
Их пример: (я изменил подчеркивания на дефисы из-за проблем с форматированием)
bob = User.find_by_name("bob")
bob.readings # => []
Post.find_unread_by(bob) # => [<Post 1>,<Post 2>,<Post 3>...]
Post.find_read_by(bob) # => []
Post.find(1).read_by?(bob) # => false
Post.find(1).read_by!(bob) # => <Reading 1>
Post.find(1).read_by?(bob) # => true
Post.find(1).users_who_read # => [<User bob>]
Post.find_unread_by(bob) # => [<Post 2>,<Post 3>...]
Post.find_read_by(bob) # => [<Post 1>]
bob.readings # => [<Reading 1>]
Поэтому кажется, что если бы я хотел перечислить количество непрочитанных сообщений, находящихся в почтовом ящике (например, Inbox (39) ), я должен был бы сделать что - то вроде:
<%= Post.find_unread_by(current-user).count %>
Но безрезультатно. Я всегда, кажется, застреваю на простых проблемах просмотра после того, как все установлено. Есть идеи?
Лучшее решение для аутентификации в Ruby на Rails
Я ищу готовое решение, которое можно использовать в моем приложении RoR. В идеале я ищу что-то похожее на проверку подлинности ASP.NET форм, которая обеспечивает проверку email, элементы управления регистрацией и позволяет пользователям сбрасывать свои пароли. Ах да, и легко позволяет мне вытащить пользователя, который в данный момент вошел в приложение.
Я начал просматривать уже написанные фрагменты, но обнаружил, что это действительно сбивает с толку. Я посмотрел на LoginGenerator, RestfulAuthentication, SaltedLoginGenerator, но, похоже, нет ни одного места, где есть отличные учебники или их сравнение. Если есть сайт, который я просто еще не обнаружил, или если есть стандарт де-факто, которым пользуется большинство людей, я был бы признателен за помощь.
WYSIWYG редактор gem для Rails?
Есть ли хороший ruby gem для редактора WYSIWYG, который легко будет работать с приложением rails?
Как представить информацию о кросс-модели в MVC?
У меня есть приложение, построенное с использованием MVC, которое создает представление, которое предоставляет сводную информацию по нескольким моделям. Кроме того, некоторые вычисления выполняются по различным наборам данных.
Нет четкой единой модели (которая, по крайней мере, сопоставляется с таблицей), которая, по-видимому, имеет смысл в качестве отправной точки для этого, поэтому различные сводки извлекаются из способствующих моделей в контроллере, передаются в представление и вычисления выполняются там.
Но это кажется, ну, грязным . Но контроллеры должны быть легкими, не так ли? И бизнес-логика не должна быть в представлениях,так как у меня она присутствует.
Так где же должна быть собрана эта информация? Новая модель, которая не сопоставляется с таблицей? Библиотека function/module? или что-то еще?
(Хотя я рассматриваю это как в основном архитектурный / шаблонный вопрос, я работаю в Rails, FWIW.)
Edit: хорошие ответы на все вопросы и много консенсуса, что обнадеживает. Я "accepted" ответ, который я сделал, чтобы сохранить ссылку на Railscasts в верхней части. Я отстаю в своем просмотре Railscast-что-то, что я буду делать напряженные попытки исправить!
Существует ли задача rake для резервного копирования данных в вашей базе данных?
Существует ли задача rake для резервного копирования данных в вашей базе данных?
У меня уже есть резервная копия моей схемы, но я хочу сделать резервную копию данных. Это небольшая база данных MySQL.
Как мне изящно закрыть веб-сервер Mongrel
Мое приложение RubyOnRails настроено с обычным пакетом дворняг за конфигурацией Apache. Мы заметили, что использование памяти нашего веб-сервера Mongrel может быть довольно большим при определенных операциях, и мы действительно хотели бы иметь возможность динамически выполнять изящный перезапуск выбранных процессов Mongrel в любое время.
Однако по причинам, которые я не буду здесь вдаваться, иногда может быть очень важно, чтобы мы не прерывали дворняжку, пока она обслуживает запрос, поэтому я предполагаю, что простое убийство процесса не является ответом.
В идеале, я хочу послать дворняге сигнал, который говорит: "закончите все, что вы делаете, а затем прекратите, прежде чем принимать какие-либо дополнительные соединения".
Существует ли стандартная техника или лучшая практика для этого?
Как изменить домашнюю страницу по умолчанию в приложении Grails?
Каков параметр конфигурации для изменения домашней страницы по умолчанию в приложении Grails, чтобы она больше не была appName/index.gsp? Конечно, вы можете настроить эту страницу как перенаправление, но должен быть и лучший способ.
Ruby / Rails доисторические даты на windows
Работая с датами в ruby и rails на windows, у меня возникают проблемы с датами до эпохи (до 1970 года), выбрасывающими исключения из диапазона. Я попытался использовать оба объекта Time и DateTime , но по-прежнему имею те же проблемы.
Как я могу поддерживать проверку подлинности сертификата клиента SSL?
Я хочу сделать то же, что делает myopenid - после того, как вы вошли в систему, вы можете нажать кнопку, которая генерирует вам сертификат SSL; браузер затем загружает этот сертификат и сохраняет его. Когда вы позже вернетесь к yourid.myopenid.com, Ваш браузер может использовать свой сохраненный сертификат для аутентификации, поэтому вам никогда не понадобится пароль.
Итак, мои вопросы - что требуется для того, чтобы это сработало? Как создать сертификаты? Как я могу подтвердить их, когда они будут представлены мне обратно?
Мой стек составляет Rails на Apache, используя Passenger, но я не слишком разборчив.
XML => HTML с Hpricot и Rails
Я никогда не работал с веб-сервисами и rails, и, очевидно, это то, что мне нужно узнать. Я решил использовать hpricot, потому что он выглядит великолепно. В любом случае, _why был достаточно хорош, чтобы предоставить следующий пример на веб -сайте hpricot :
#!ruby
require 'hpricot'
require 'open-uri'
# load the RedHanded home page
doc = Hpricot(open("http://redhanded.hobix.com/index.html"))
# change the CSS class on links
(doc/"span.entryPermalink").set("class", "newLinks")
# remove the sidebar
(doc/"#sidebar").remove
# print the altered HTML
puts doc
Которая выглядит простой, элегантный, и удобной для тебя такого. Отлично работает в Ruby, но мой вопрос: Как я могу разбить это в rails?
Я экспериментировал с добавлением всего этого к одному контроллеру, но не мог придумать лучший способ назвать его в представлении.
Итак, если бы вы разбирали файл XML из web API и печатали его в nice clean HTML с помощью Hpricot, как бы вы разбили активность по моделям, представлениям и контроллерам, и что бы вы поместили туда?
Есть ли способ объединить именованные области в новую именованную область?
У меня есть
class Foo < ActiveRecord::Base
named_scope :a, lambda { |a| :conditions => { :a => a } }
named_scope :b, lambda { |b| :conditions => { :b => b } }
end
Я хотел бы
class Foo < ActiveRecord::Base
named_scope :ab, lambda { |a,b| :conditions => { :a => a, :b => b } }
end
но я бы предпочел сделать это в стиле DRY. Я могу получить тот же эффект, используя
Foo.a(something).b(something_else)
но это не особенно красиво.
Развертывание подкаталога Git в Capistrano
Мой главный макет ветви выглядит так:
/ <-- верхний уровень
/client <-- исходные файлы desktop client
/server <-- Rails приложение
Все , что я хотел бы сделать, это просто снять каталог /server в моем deploy.rb, но я не могу найти никакого способа сделать это. Каталог /client огромен, поэтому настройка крючка для копирования /server в / не будет работать очень хорошо, ему нужно только снять приложение Rails.
Rails требует RubyGems >= 0.9.4. Пожалуйста, установите RubyGems
Я развертываю в Ubuntu slice на slicehost, используя Rails 2.1.0 (от gem )
Если я попробую mongrel_rails start или script / server, я получу эту ошибку:
Rails requires RubyGems >= 0.9.4. Please install RubyGems
Когда я набираю gem -v , у меня установлена версия 1.2.0 . Любые быстрые советы о том, на что смотреть, чтобы исправить?
Кто уже пробовал, что посоветуете по изучению Groovy (литература, сайты)?
Да и общие впечатления от опытных товарищей тоже интересны. Интересует, так как единственным скриптовым языком в моем арсенале был PHP, по многим причинам хочу от него отказаться. Главный кандидат на его замену — Groovy.
Книгу по Rails 3 на русском или английском?
Хотелось бы заиметь что-то похожее на «Гибкую разработку веб-приложений в среде Rails» (с примером приложения, которое пишется по ходу повествования), но уже для третих рельс. И вообще хорошо будет если там же про RSpec будет.
Чего посоветуете использовать для подмены веб запросов?
fakeweb или webmock?
Можно комментариями здесь, либо проголосовать.
Как сделать инвайты на Rails 3
Типичная проблема: нужно сделать систему создания, отправки и валидации инвайтов для пользователей на рельсах.
Используется Authlogic.
Погуглил — ничего сразу не нашлось, а писать велосипед самому всегда успеется.
Ruby on Rails 3 validation model
Предположим у нас есть User модель и в ней есть first_name, last_name, email поля. Все они обязательные. Соотвественно в модели мы прописываем
что-то типа такого
validates :first_name, :presence => true
validates :last_name, :presence => true
validates :email, :presence => true
и все было бы хорошо если бы форма была на одной странице.
А теперь вопрос, как поступть с validation если форма для апдейта first_name и last_name на одной странице а email на другой.
По умолчанию так сказать на форме где first_name и last_name если ее засабмитеть то будет ошибка что мол email требуется и это верно (у меня же email на другой странице нужно обновлять), тоже самое и на форме email где валидация будет просить first_name и last_name. Меня интересует как в Rails 3 корректно обрабатывать такую ситуацию.
К примеру в ASP.NET MVC я делаю как бы child ViewModel непосредственно для конкретного View проверяю поля и потом делаю маппинг свойств с родительской моделью. Как правильно это сделать в Rails 3?
Не могу запустить redmine :(
Добрый день, коллеги.
Понадобилось мне поставить development версию redmine, дабы посмотреть как там одна функциональность устроена. Но так как веб разработка — не мой профиль, то как и ожидалось ничего не получилось :(. Вроде бы делаю все по феншую, в полном соответствии с инструкцией на redmine.org, на дружественной MacOS — но не работает. Если у кого есть опыт установки redmine — подскажите, что это может быть.
ОС: Mac OS X Snow Leopard со всеми обновлениями.
Ruby: 1.8.7
Rails: 2.3.5
Rack: 1.0.1
Выполняю следующие команды:
svn checkout redmine.rubyforge.org/svn/tags/1.0.2 redmine
cd redmine
cp config/database.yml.example config/database.yml
vi config/database.yml
Меняю production и development на SQLite
rake generate_session_store
RAILS_ENV=development rake db:migrate
RAILS_ENV=development rake redmine:load_default_data
ruby script/server -e development
Сервер запускается, главная страница Redmine доступна на хттп://0.0.0.0:3000
После логина admin/admin при попытке зайти в profile получаем:
ArgumentError in My#account
Showing app/views/my/_sidebar.rhtml where line #4 raised:
wrong number of arguments (2 for 0)
Extracted source (around line #4):
1: <%=l(:label_my_account)%>
2:
3: <%=l(:field_login)%>: <%= @user.login %>
4: <%=l(:field_created_on)%>: <%= format_time(@user.created_on) %>
5:
6:
7: <%= l(:label_feeds_access_key) %>
Trace of template inclusion: app/views/my/account.rhtml
RAILS_ROOT: /Users/eye/rails/redmine
То же самое в trunk и при production. Ошибку понять не могу, по коду идет абсолютно валидный вызов метода о двух параметрах с двумя аргументами — в трейсе же написано что у вызываемого метода не два параметра, а ноль. Либо я совсем не знаю синтаксиса ruby, либо рефлекшн с полиморфизмом постарались :(.
cd redmine
cp config/database.yml.example config/database.yml
vi config/database.yml
Меняю production и development на SQLite
rake generate_session_store
RAILS_ENV=development rake db:migrate
RAILS_ENV=development rake redmine:load_default_data
ruby script/server -e development
Showing app/views/my/_sidebar.rhtml where line #4 raised:
wrong number of arguments (2 for 0)
Extracted source (around line #4):
1:
<%=l(:label_my_account)%>
2:
3: <%=l(:field_login)%>: <%= @user.login %>
4: <%=l(:field_created_on)%>: <%= format_time(@user.created_on) %>
5:
6:
7:
<%= l(:label_feeds_access_key) %>
Trace of template inclusion: app/views/my/account.rhtml
RAILS_ROOT: /Users/eye/rails/redmine
Rails. ActiveRecord. Ассоциации?
Есть таблица Images. Как правильно сделать ассоциацию Images к самой себе, используя миграции? Как правильно назвать дополнительную связывающую таблицу? Что прописать в модели Image?
Ruby on Rails 3 — Ajax preloader?
Добрый вечер! Подскажите rails way для создания ajax подгрузки контента страницы, например есть шаблон со списком продуктов, и пока он не подгрузился показываем индикатор загрузки. Спасибо за ответы!
Какие есть каталоги полезных gems/plugins для Rails 3
Хотелось бы, чтобы под рукой был список всех полезных гемов для рельсов, но сколько не смотрю, те сайты что видел они содержат или очень старые плагины или это www.railsplugins.org/, который только сообщает что работает под рельсы 3.
Есть ли такой сайт, где были б собраны все нужные гемы и при этом достаточно понятно каталогизированы, чтоб можно было легко найти гем, который подходит под выбранную задачу.
Спасибо.
Настройка Rails под Apache
Всем привет.
Поставил rvm, всё отлично. Сделал rails new example.
Дальше, по идее, надо кинуть .htacces в public с примерно таким содержанием:
AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)/!$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
ErrorDocument 500 "Application error Application failed to start properly"
И прописать /public как DocumentRoot.
Но проблема вот в чем: dispatch.fcgi (и dispatch.cgi тоже) отсутсвуют. Где их взять?
Софт: Ubuntu Server 10.04 64-bit, Ruby 1.9.2, Rails 3.0.3 и вмеру кривые руки.
RewriteEngine On
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)/!$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
ErrorDocument 500 "Application error Application failed to start properly"