Commands:
backup check # Check for configuration errors or warnings
backup generate:config # Generates the main Backup configuration file
backup generate:model -t, --trigger=TRIGGER # Generates a Backup model file.
backup help [COMMAND] # Describe available commands or one specific...
backup perform -t, --triggers, --trigger=TRIGGER # Performs the backup for the specified trigg...
backup version # Display installed Backup version
Generated configuration file: '/home/deployer/Backup/config.rb'.
# Check for configuration errors or warnings
[2015/12/01 10:45:45][info] Configuration Check Succeeded.
//def generated_image_url(path, cache_buster = Sass::Script::Bool.new(false))
// cachebust_generated_images(path)
// asset_url(path)
// end
map = new ymaps.Map(map_id, {
center: position,
zoom: 10,
controls: ['zoomControl', 'fullscreenControl']
});
circle = new ymaps.Circle([
[position[0].toFixed(5),position[1].toFixed(5)],
radius
], {},
{
draggable: false,
fillColor: color1+"33",
strokeColor: color1,
strokeOpacity: 0.9,
strokeWidth: 3
})
var resize_circle = function(e) {
if (prev_position != undefined) {
var d = Math.round(ymaps.coordSystem.geo.getDistance(prev_position, e.get('coords')));
if (d > 100000) { d = 100000}
circle.geometry.setRadius(d);
}
}
var start_draw_circle = function(e){
if (circle_mode_button.state.get('selected')) {
prev_position = e.get('coords');
circle.geometry.setCoordinates(prev_position);
}
}
circle.events
.add('mousedown', start_draw_circle)
.add('mouseup', function (e) {
prev_position = undefined;
})
.add('mousemove', resize_circle);
map.events.
add('mousedown', start_draw_circle)
.add('mouseup', function (e) {
prev_position = undefined;
})
.add('mousemove', resize_circle);
circle_mode_button = new ymaps.control.Button("Рисовать область");
circle_mode_button.state.set('selected', false);
circle_mode_button.events.add('select', function(){
map.behaviors.disable('drag');
}).add('deselect', function(){
map.behaviors.enable('drag');
});
map.controls.add(circle_mode_button, {float: 'right', maxWidth: 200});
map.geoObjects.add(circle);
Имеется несколько причин того, что может возникнуть желание компилировать ресурсы локально. Вот некоторые из них:
У вас нет права записи в файловую систему production.
Вы размещаетесь более чем на одном сервере и хотите избежать дублирования работы.
Вы часто производите деплои, не включающие изменения ресурсов.
Локальная компиляция позволяет зафиксировать скомпилированные файлы в управлении версиями и деплоить как обычно.
Однако есть три оговорки:
Вы не должны запускать задачу Capistrano, которая компилирует ресурсы.
Вы должны убедиться, что в вашей системе разработке присутствуют все необходимые компрессоры или минифайеры.
Вы должны изменить следующую конфигурационные настройку приложения:
В config/environments/development.rb поместите следующую строчку:
config.assets.prefix = "/dev-assets"
Изменение prefix позволяет Sprockets использовать другой URL для обслуживания ресурсов в режиме development и передавать все запросы в Sprockets. Префикс остался установленным /assets в режиме production. Без этого изменения приложение будет обслуживаться прекомпилированными ресурсами из /assets в development, и вы не увидите какие-либо локальные изменения, пока снова не скомпилируете ресурсы.
На практике это позволит прекомпилировать локально, держать эти файлы в рабочей ветке и при необходимости фиксировать в системе контроля версий. Режим development будет работать так, как от от него ожидается
Вы не должны запускать задачу Capistrano, которая компилирует ресурсы?
@import 'compass'
@import "compass/utilities/sprites"
$icons-layout:smart
@import "grey/icons/*.png"
@include all-icons-sprites
...
label.boolean.checked:after
@include icons-sprite(ok)
SimpleForm spends a lot of time for trying to translate hints and placeholders for inputs
placeholder: false, hint: false
где только можно. Получил ускорение с 6 секунд до 780ms. get '/настройки', :to=> 'cabinet/user#edit', :as => :edit_user
get '/настройки/:tab', :to=> 'cabinet/user#edit', :as => :edit_user
%h1= @page_title = "Настройки профиля"
- if params[:tab] == "основные"
- @tab = :common
- elsif params[:tab] == "география"
- @tab = :geo
- elsif params[:tab] == "уведомления"
- @tab = :notify
- elsif params[:tab] == "интерфейс"
- @tab = :interface
- else
- @tab = :common
= render partial: "/cabinet/settings/tabs"
= simple_form_for current_user, :url => update_user_path, :html => {:multipart => true} do |f|
- if @tab == :common
= render partial: "/cabinet/settings/form_common", locals: {f: f}
- if @tab == :geo
= render partial: "/cabinet/settings/form_geo", locals: {f: f}
- if @tab == :notify
= render partial: "/cabinet/settings/form_notify", locals: {f: f}
- if @tab == :interface
= render partial: "/cabinet/settings/form_interface", locals: {f: f}
= f.button :submit, "Сохранить изменения"
= hidden_field_tag :tab, params[:tab]
def update
bla(bla(bla))
redirect_to edit_user_path
end
def update
bla(bla(bla))
redirect_to edit_user_path(:tab=>params[:tab])
end
Hi! I use your gem in my RoR app.
Recaptcha works well. But when I try to add more than one Recaptcha on different forms at single page - I see only one of them.
I try get 2 Recaptha for my syte at Google:
at first form:
recaptcha_tags :public_key => Rails.application.secrets.recapcha_public_key
at second form:
recaptcha_tags :public_key => Rails.application.secrets.recapcha_public_key2
It not helps me.
How I can fix it? Thanks
Are you able to put two recaptcha on the page even without the gem, just manually? I'm not sure it's a problem with the gem.
—
Jason L Perry
I never try it. It impossible you mean? Recaptcha (on google level) unsupport it?
def category_details
@item = Item.new
@item.category = params[:id]
render 'details_form', layout: false
end
<%= simple_form_for @adv do |f| %>
логика, которая в зависимости от @item.category, генерит нужные поля с помощью хелперов simple_form
<% end %>
<i>JavaScript:</i>
$('#поле с выбором категории').change(function(){
$('#item_details').empty();
$.get('/cabinet/category/'+$(this).val()+'/details_form', {},
function(data){
$(data).children("[type != hidden]").appendTo('#item_details');
}
);
});