2016-03-07 2 views
0

Итак, написав код для совместного использования файлов, у меня есть два маршрута.Материализация CSS не отображается (что-то делать с флягой)

@app.route('/upload/<filename>', methods=['GET', 'POST']) 

и

@app.route('/gallery', methods=['GET', 'POST']) 

«/ галерея» показывает все файлы в «.../изображений папку и возвращает список из них в качестве переменной для Джиндже для отображения

»/upload/filename 'показывает либо файл, на который был нажат пользователь, который ранее находился в'/gallery ', или каталог, на который был нажат.

При нажатии на каталог отображается страница, похожая на «/ галерея», которая содержит список всех файлов в «.../images/directory». Эта страница идентична «display_complete_image.html» (html-файл, показанный в '/ gallery'), за исключением одного способа, который, как я знаю, не влияет на работу материализации или нет. Это заставило меня поверить, что проблема связана с моей флягой, а не с HTML. Вот код. Я был бы рад, если бы кто-нибудь мог помочь

@app.route('/upload/<filename>', methods=['GET', 'POST']) 
@admin_required 
def send_image(filename): 
    if request.method == "POST": 
     if request.form.get('mobile_site_button', None) != None: 
      session[ 'mobile_site' ] = mobile_site_check(request.form.get('mobile_site_button')) 

    if "." not in filename: 
     print ". not in filename" 
     return render_template("complete_display_directory.html", mobile_site=session.get('mobile_site'), logged_in_status=is_logged_in(), image_names=os.listdir('./images/%s' % (filename.replace('|', '/'))), directory_name=filename) 

    elif "|" in filename: 
     filename_back = filename[::-1] 
     char = filename_back.find("|") 
     print char 

     directory_name_back = filename_back[char::] 
     filename_back = filename_back[:char:] 

     filename = filename_back[::-1] 
     directory_name = directory_name_back[::-1] 

     return send_from_directory("images/%s" % (directory_name.replace('|', '/')), filename) 

    else: 
     return send_from_directory("images/", filename) 

выше есть '/ upload/filename'. Он показывает пользователя 'complete_display_directory.html' (список файлов в каталоге, на который они нажали) ИЛИ файл, на который они нажали. Ниже «/ галерея». Он отображает пользователя «complete_display_image.html» (список файлов в «.../images»). Не спрашивайте меня об именовании.

@app.route('/gallery', methods=['GET', 'POST']) 
@admin_required 
def get_gallery(): 
    image_names = os.listdir('./images') 

    if request.form.get('mobile_site_button', None) != None: 
     session[ 'mobile_site' ] = mobile_site_check(request.form.get('mobile_site_button')) 

    return render_template("complete_display_image.html", image_names=image_names, mobile_site=session.get('mobile_site'), logged_in_status=is_logged_in()) 

/галерея фото (это одно, как это должно быть) '/gallery' Загрузить/Каталог фото (Где материализовать !?) '/upload/directory'

+0

Глядя на моем терминале, я вижу, что настой является (по какой-то неизвестной причине мне) пытается найти материализовать в /upload/static/css/materialize.min.css когда это он переходит в каталог/upload /, а не /static/css/materialize.min.css –

ответ

0

Оказался Колба направлять свои запросы на materialize.min.css в /upload/static/css/materialize.min.css вместо /static/css/materialize.min.css, поэтому я немного поработал над переполнением стека и обнаружил, что могу сделать доступ к фляге материализованным путем изменения моей ссылки href из

<link href="..static/css/materialize.min.css" type="text/css" rel="stylesheet" media="screen,projection"> 

в

<link href="{{ url_for('static', filename='bootstrap.min.css') }}" rel="stylesheet" media="screen"> 

:)

Смежные вопросы