2017-07-03 86 views
0

我的資源在底部顯示,它是用如何重定向到默認的404頁面燒瓶寧靜

api.add_resource(JobAPI, '/jobs/<int:job_id>')

我也有一個自定義的404頁掛接到/jobs/。如果請求的job_id不存在,我如何重定向到自定義404頁面?我試圖用abort(404)但它只顯示了一些JSON消息

{ 「消息」:「所請求的URL沒有在服務器上找到。如果你手動輸入網址,請檢查您的拼寫,然後重試你。 已請求此URI [/ jobs/1],但您的意思是/ jobs/ ?「 }

我也試圖return redirect()但由於marshal_with已被使用,它不重定向而是堅持返回一個作業實例。

class JobAPI(Resource):                
     """                    
     Simple job                  
     """                    
     @marshal_with(job_fields)              
     def get(self, job_id):               
      job = Job.query.get(job_id)             
      if job is None:                
       abort(404)                
       # flash('Job does not exist.')           
       # return redirect(url_for('home.index'))        
      return job 
+0

您是否嘗試過使用[錯誤處理程序](http://flask.pocoo.org/docs/0.10/patterns/errorpages/)? [這裏同樣的問題](https://stackoverflow.com/questions/29516093/how-to-redirect-to-a-external-404-page-python-flask) –

回答