Когда я попробовал ответ, предоставленный @metasequoia, возвращаемый вектор имел начальные пробелы, а не 0
s. Это была та же проблема, о которой упоминал @ user1816679 - и удаление цитат вокруг 0
или изменение с %d
на %s
тоже не имело значения. FYI, я использую RStudio Server, работающий на сервере Ubuntu. Это небольшое двухшаговое решение работало для меня:
gsub(pattern = " ", replacement = "0", x = sprintf(fmt = "%09s", ids[,CUSIP]))
, используя функцию %>%
pipe из пакета magrittr
, это могло бы выглядеть так:
sprintf(fmt = "%09s", ids[,CUSIP]) %>% gsub(pattern = " ", replacement = "0", x = .)
Я бы предпочел однофункциональное решение, но оно работает.
Поместите что-то вроде этого в свой контроллер приложения. Я использую субдомен плюс "_clientdb" для выбора названия базы данных. У меня есть все базы данных с помощью того же имени пользователя и пароля, таким образом, я могу захватить это из файла конфигурации дб.
Надеюсь, это поможет!
class ApplicationController < ActionController::Base
before_filter :hijack_db
def hijack_db
db_name = request.subdomains.first + "_clientdb"
# lets manually connect to the proper db
ActiveRecord::Base.establish_connection(
:adapter => ActiveRecord::Base.configurations[ENV["RAILS_ENV"]]['adapter'],
:host => ActiveRecord::Base.configurations[ENV["RAILS_ENV"]]['host'],
:username => ActiveRecord::Base.configurations[ENV["RAILS_ENV"]]['username'],
:password => ActiveRecord::Base.configurations[ENV["RAILS_ENV"]]['password'],
:database => db_name
)
end
end
Смотрите на ActiveRecord:: основа establish_connection. Это - то, как Вы соединяетесь с другим сервером базы данных. Я не могу иметь намного большего количества справки, так как я не знаю, как Вы распознаете пользователя или отображаете ее на, он - база данных, но я предполагаю, что основная база данных будет иметь ту информацию (и информация о соединении должна быть на database.yml файле).
Всего наилучшего.