Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 26, 2015 00:19:04

Australicys
Зарегистрирован: 2014-05-07
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

Форумчане, привет!

С гайдами настроил apache+flask на Ubuntu, темплэйты рендерит, но есть одна загвоздка:

Как вы знаете, в python можно делать так

render_template('index.html', arr=arr)

и arr передается в html темплэйт
В html можно сделать так:
{%for i in arr%}
{{i | safe}}
{%endfor%}

ПРОБЛЕМА
Когда я передаю данные в темплэйт, на сайте выдает ошибку. Переменные удаляю, все возвращается к работе. Это почему такое?

Заранее спасибо за пояснения

UPD: Если вообще что-то питоновское вставить в тело функции фласка, то сайт не рендерится

Отредактировано Australicys (Ноя. 26, 2015 01:07:00)

Офлайн

#2 Ноя. 26, 2015 03:38:56

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

Australicys
ВСЕГДА указывайте текст traceback ошибки



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Ноя. 26, 2015 03:52:07

Australicys
Зарегистрирован: 2014-05-07
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

JOHN_16

Хорошо, принял к сведению

собственно, с браузера в аттаче
сервак перезапускается ок

вот что в конфиге

<VirtualHost *:80>
		ServerName "onlinewear.ru"
		ServerAdmin admin@onlinewear.ru
		WSGIScriptAlias / /var/www/showcase/showcase.wsgi
		<Directory /var/www/showcase/showcase/>
			Require all granted
		</Directory>
		Alias /static /var/www/showcase/showcase/static
		<Directory /var/www/showcase/showcase/static/>
			Require all granted
		</Directory>
		ErrorLog ${APACHE_LOG_DIR}/error.log
		LogLevel warn
		CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

вот лог
[Wed Nov 25 21:15:30.540408 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383] mod_wsgi (pid=26192): Target WSGI script '/var/www/showcase/showcase.wsgi' cannot be loaded as Python module.
[Wed Nov 25 21:15:30.540481 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383] mod_wsgi (pid=26192): Exception occurred processing WSGI script '/var/www/showcase/showcase.wsgi'.
[Wed Nov 25 21:15:30.540594 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383] Traceback (most recent call last):
[Wed Nov 25 21:15:30.540650 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383]   File "/var/www/showcase/showcase.wsgi", line 7, in <module>
[Wed Nov 25 21:15:30.540803 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383]     from showcase import app as application
[Wed Nov 25 21:15:30.540912 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383]   File "/var/www/showcase/showcase/__init__.py", line 45
[Wed Nov 25 21:15:30.540936 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383]     return render_template('index.html')
[Wed Nov 25 21:15:30.540950 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383]                                        ^
[Wed Nov 25 21:15:30.540963 2015] [:error] [pid 26192:tid 139924613785344] [client 31.40.99.222:55383] IndentationError: unindent does not match any outer indentation level

Отредактировано Australicys (Ноя. 26, 2015 04:16:52)

Прикреплённый файлы:
attachment 2015-11-26 04.50.36 am.jpg (58,3 KБ)

Офлайн

#4 Ноя. 26, 2015 04:21:01

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

1) 500 код у вас никак не обрабатывается, поищите инфу в логах апача, о том что происходило.
2) само приложение, без апача работает корректно? Проверяли?



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#5 Ноя. 26, 2015 04:22:04

Australicys
Зарегистрирован: 2014-05-07
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

без апача работает корректно, проверял.

Я что-то намудрил с конфигами и зависимостями, очевидно
Как разобраться?

Офлайн

#6 Ноя. 26, 2015 04:26:44

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

Australicys
рано вы перелезли на Веб-сервер. Для начала ваше Flask приложение должно быть работоспособным само по себе. Ошибка указывает на то что данная строка имеет отступ не соответствующий другим. Исправьте отступы.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#7 Ноя. 26, 2015 04:33:22

Australicys
Зарегистрирован: 2014-05-07
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

JOHN_16

хм, а почему если я пишу так

app = Flask(__name__)
@app.route('/')
def index():
    return render_template('index.html')

все работает, а вот так

app = Flask(__name__)
@app.route('/')
def index():
    a = ''
    return render_template('index.html')

нет?

Офлайн

#8 Ноя. 26, 2015 04:45:44

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

Australicys
похоже вы все таки не приняли к сведению что всегда нужно указывать текст ошибку. А Знаете почему? потому что там чаще всего указан ответ на подобный вопрос.
Если же речь идет об отступах..то проверяйте, может вы разными редакторами пользуетесь и совмещаете табуляцию и проблемы, или еще какие причины.
Подобный код не может быть не рабочим просто потому что вы туда переменную добавили.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#9 Ноя. 26, 2015 04:47:25

Australicys
Зарегистрирован: 2014-05-07
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

JOHN_16

сори, тогда я не до конца понял
где найти текст ошибку, раздуплите, пожалуйста

Офлайн

#10 Ноя. 26, 2015 04:58:01

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

flask + apache != Jinja?

Australicys
если речь идет о приложении которое работает в Апаче, то в его логах должно это значиться - так же как вы указали лог в прошлый раз



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version