Почему бы просто не отсортировать по названию? Предполагая, что у вас есть столбец в таблице статей, который называется title
:
Для алфавитного порядка
def index
@articles = Article.order(:title)
end
Для обратного алфавитного порядка
def index
@articles = Article.order(title: :desc)
end
Если вы действительно хотите просто отсортировать по подстроке заголовка. Вам нужно будет добавить новый столбец в таблицу статей (в этом примере он называется slug):
rails g migration AddSlugToArticles slug:text
rails db:migrate
Тогда у вас будет обновить поле слагов для каждой записи
Article.all.each do |article|
new_slug = #your code to generate substring here
article.update(slug: my_string
end
, затем упорядочить по слагу:
def index
@articles = Article.order(:slug)
end
Попытка:
subprocess.call(['sudo', 'apach2ctl', 'restart'])
подпроцесс должен получить доступ к реальному stdin/out/err для него, чтобы смочь предложить Вам и читать в Вашем пароле. При установке их как каналов необходимо подать пароль в тот канал сами.
, Если Вы не определяете их, затем это захватывает sys.stdout, и т.д.
Необходимо использовать Popen как это:
cmd = ['sudo', 'apache2ctl', 'restart']
proc = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Это ожидает список.