Как Вы обрабатываете развертывающиеся приложения направляющих с подмодулями?

Django поставляется с шаблоном фильтра под названием striptags , который вы можете использовать в шаблоне:

value|striptags

Он использует функцию strip_tags, которая находится в django.utils.html. Вы также можете использовать его для очистки данных вашей формы:

from django.utils.html import strip_tags
message = strip_tags(form.cleaned_data['message'])

13
задан Tony 4 June 2009 в 23:47
поделиться

1 ответ

Согласно этот недавний поток , capistrano должен иметь возможность инициализировать и обновлять ваши подмодули:

set :git_enable_submodules,1

в config / deploy.rb должно быть достаточно, если ваш .gitmodules записи актуальны.
Вам может потребоваться для исправления Capistrano ( lib / capistano / recipes / deploy / scm / git.rb ) , чтобы убедиться, что ваши подмодули включены.

    def checkout(revision, destination)
      git      = command

      branch   = head

      fail "No branch specified, use for example 'set :branch, \"origin/master\"' in your deploy.rb" unless branch

      if depth = configuration[:git_shallow_clone]
        execute  = "#{git} clone --depth #{depth} #{configuration[:repository]} #{destination} && " 
      else
        execute  = "#{git} clone #{configuration[:repository]} #{destination} && " 
      end

      execute += "cd #{destination} && #{git} checkout -b deploy #{branch}" 

      if submodules = configuration[:git_enable_submodules]
        execute += " && git-submodule init &&" 
        execute += "git-submodule update" 
      end

      execute
    end

Если у вас есть ] вложенных подмодулей , вам необходимо:

gem sources -a http://gems.github.com
$ sudo gem install morhekil-capistrano-deepmodules

Просто потребуйте его в конфигурации развертывания:

require 'capistrano / deepmodules'

Обо всем остальном гем позаботится автоматически.
Вы можете удалить : git_enable_submodules из своей конфигурации, гем не обращает на это внимания - если вам это нужно, вы уже говорите, что хотите включить подмодули.

И еще одна деталь, которую нужно заплатить внимание - на данный момент гем поддерживает только стратегию удаленного кеширования. Это означает, что вы ДОЛЖНЫ добавить в конфигурацию следующую строку:

set :deploy_via, :remote_cache

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

12
ответ дан 1 December 2019 в 22:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: