Я проголосовал за закрытие. Это действительно не о Ubuntu. На всякий случай вам нужен ответ быстро: не используйте понимание списка, если оно слишком сложное. Попробуйте
original_li = [1,2,3,4,5]
new_li = []
for itm in original_li:
if condition1 and condition2:
new_li.append(itm)
или если условия еще слишком длинные:
original_li = [1,2,3,4,5]
new_li = []
for itm in original_li:
if condition1:
if condition2:
new_li.append(itm)
Теперь у вас есть список, который вам нужен. Конечно, вы можете обернуть это функцией.
На самом деле это известная ошибка в Redmine 3.2.3-1: в этой группе go есть обсуждение этой проблемы.
Не создавайте «/ etc / redmine / * / database.yml 'во время вашей конфигурации. Создание этого позже также не исправляет проблему.
Я, наконец, сделал это примерно через 8 часов, моя Redmine снова работает. Спасибо Мануэлю и десяткам других вопросов и ответов StackExchange.
Если принятый ответ не совсем работает, чтобы удалить старый пакет и получить сообщение о том, что пакет находится в очень плохом состоянии (dpkg: warning: package is in a very bad inconsistent state; you should reinstall it before attempting a removal), и не может быть удален с помощью sudo apt-get remove redmine --purge, как написано Мануэлем, выполните следующее. Все еще обновляйте сценарий redmine.postrm, как писал Мануэль в своем ответе. Возможно, это работает для вас, но это не для меня. Загрузите пакет redmine вручную на сайте packages.ubuntu.com и запустите sudo dpkg -i WHERE/THE/DOWNLOADED/PACKAGE/IS, как было предложено в этом комментарии.
Если это не сработало, попробуйте следующее что работало для меня как найдено этот комментарий : sudo dpkg --remove --force-remove-reinstreq redmine. Я также sudo dpkg --purge --force-remove-reinstreq redmine удалил файлы конфигурации. И после этого также sudo apt-get remove redmine и sudo apt-get autoremove && sudo apt-get autoclean
Если вы получили дополнительную ошибку при установке redmine с sudo apt-get install redmine redmine-mysql около
/usr/local/bin/bundle:23:in 'load': cannot load such file -- /usr/share/rubygems-integration/all/gems/bundler-1.11.2/exe/bundle (LoadError)
from /usr/local/bin/bundle:23:in '<main>'
Затем попробуйте и посмотрите, есть ли у вас Доступна команда gem (если нет, не знаю, откуда она взялась, но, скорее всего, пакет ruby, поэтому просто установите это) и введите gem install bundler. Если у вас уже было это хорошо. Он будет установлен на INSTALLATION DIRECTORY, который вы можете увидеть при запуске gem environment, в моем случае /var/lib/gems/2.3.0. Я не знаю, почему, но у меня еще не было bundler-1.11.2 в каталоге, о котором говорилось выше, но что бы он ни делал.
Следующая ошибка, которую я получил:
dbconfig-common: flushing administrative password
Could not find gem 'mysql2 (~> 0.4.0)' in any of the gem sources listed in your Gemfile or available on this machine.
Run `bundle install` to install missing gems.
Прежде чем я смог установить с помощью gem install mysql2, мне пришлось установить sudo apt-get install libmysqlclient-dev (если это не сработает, сначала удалите пакет redmine, как показано выше, I должен был это сделать). Это должно быть установлено автоматически с пакетом redmine, но да ...
Если вы получите ошибку, например
Fetching: mysql2-0.4.4.gem (100%)
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.̀
И что-то в данном файле журнала ошибок, например gcc: error: unrecognized command line option затем запустите sudo apt-get install gcc make. Повторите попытку с помощью gem install mysql2̀.
. После этого продолжайте с ответа Мануэля. И если вы получите сообщение об ошибке при создании файла database.yml (у меня не было ни одного, созданного во время установки btw, и его не удалось скопировать, пришлось копировать пример Мануэля, так что не волнуйтесь) и продолжил установку и получил что-то например,
[!] There was an error parsing 'Gemfile': undefined method 'values' for "Setup is given for MySQL with ruby1.9.":String. Bundler cannot continue.
# from /usr/share/redmine/Gemfile:67
# -------------------------------------------
# database_config = YAML::load(ERB.new(IO.read(database_file)).result)
> adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
# if adapters.any?
# -------------------------------------------
Тогда не беспокойтесь, вы просто слишком глупы, чтобы скопировать файл database.yml правильно, как я: D В моем случае я забыл начальный знак комментария #. Если у вас могут быть другие проблемы, проверьте файл database.yml на http://www.yamllint.com/ на наличие ошибок. Возможно, если у вас есть пароль, содержащий @, вы должны избежать этого символа (не знаете как), потому что это зарезервированный символ ямля.
Попробуйте следующее:
Найдите и прокомментируйте строку удаления в этом файле: /var/lib/dpkg/info/redmine.postinst
Посмотрите:
#rm -f /var/lib/redmine/Gemfile.lock
Сделать символическую ссылку на /var/lib/redmine/Gemfile.lock на / usr / share / redmine
Попробуйте обновить; -)