Ruby on Rails Редактировать шаблон файла? - PullRequest
1 голос
/ 25 марта 2012

У меня есть файл HTML / CSS с несколькими областями, которые нужно добавить.У меня есть приложение ruby ​​on rails, которое будет иметь набор элементов формы, которые затем нужно будет добавить в этот файл HTML / CSS (его не нужно показывать или что-то еще, просто отредактировать и сохранить).Я не очень понимаю, как я могу это сделать.Я смотрел на класс файла, но очень быстро потерялся.

Есть ли простой способ сделать это?

1 Ответ

1 голос
/ 25 марта 2012

Запись в файл в Ruby очень проста:

File.open(filename, 'w') do |f|
  f.write(content)
end

Для примера в Rails попробуйте следующие шаги.Создайте новое приложение Rails и пустышку, запустив:

rails new erbfun
cd erbfun
rails g scaffold Stylesheet custom_css:text
rake db:migrate
mkdir -p public/system/stylesheets

Затем сделайте что-то подобное в вашей модели:

class Stylesheet < ActiveRecord::Base
  require 'erb'

  FOLDER = File.join(Rails.public_path,'system/stylesheets')
  TEMPLATE = <<-CSS
    body {
      font-family: Helvetica;
    }
    <%= custom_css %>
    /* some css comment here ... */
  CSS

  def save_to_file
    template = ERB.new(TEMPLATE)
    document = template.result(binding)
    filename = File.join(FOLDER,"stylesheet-#{Time.now.to_i}.css")
    File.open(filename, 'w') do |f|
      f.write(document)
    end
  end
end

и попробуйте:*

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...