@@ -32,7 +32,7 @@ urlpatterns += [  | 
            ||
| 32 | 32 | 
                 | 
            
| 33 | 33 | 
                url(r'^l/wx/authorize$', lensman_views.lensman_wx_authorize_api, name='lensman_wx_authorize_api'), # 微信用户授权  | 
            
| 34 | 34 | 
                 | 
            
| 35 | 
                - url(r'^l/photos/upload$', lensman_views.lensman_upload_photo_api, name='lensman_upload_photo_api'), # 摄影师上传照片  | 
            |
| 35 | 
                + url(r'^l/upload$', lensman_views.lensman_photo_upload_api, name='lensman_photo_upload_api'), # 摄影师照片上传  | 
            |
| 36 | 36 | 
                ]  | 
            
| 37 | 37 | 
                 | 
            
| 38 | 38 | 
                # 群组相关  | 
            
                @@ -105,15 +105,16 @@ def lensman_wx_authorize_api(request):  | 
            ||
| 105 | 105 | 
                return response(200, 'Lensman Login Success', u'摄影师登录成功', user.data)  | 
            
| 106 | 106 | 
                 | 
            
| 107 | 107 | 
                 | 
            
| 108 | 
                -def lensman_upload_photo_api(request):  | 
            |
| 108 | 
                +@logit  | 
            |
| 109 | 
                +def lensman_photo_upload_api(request):  | 
            |
| 109 | 110 | 
                """  | 
            
| 110 | 
                - 摄影师上传照片  | 
            |
| 111 | 
                + 摄影师照片上传  | 
            |
| 111 | 112 | 
                :param request:  | 
            
| 112 | 113 | 
                :return:  | 
            
| 113 | 114 | 
                """  | 
            
| 114 | 115 | 
                     user_id = lensman_id = request.POST.get('user_id', '')
               | 
            
| 115 | 116 | 
                     nickname = request.POST.get('nickname', '')
               | 
            
| 116 | 
                -    session_id = request.POST.get('session', '')
               | 
            |
| 117 | 
                +    session_id = request.POST.get('session_id', '')
               | 
            |
| 117 | 118 | 
                 | 
            
| 118 | 119 | 
                     photo_id = request.POST.get('photo_id', '')
               | 
            
| 119 | 120 | 
                 | 
            
                @@ -48,11 +48,11 @@ urlpatterns = [  | 
            ||
| 48 | 48 | 
                 | 
            
| 49 | 49 | 
                urlpatterns += [  | 
            
| 50 | 50 | 
                     # url(r'^api/', include('api.urls', namespace='api')),
               | 
            
| 51 | 
                - url(r'^s/(?P<session>\w+)$', photo_views.session_detail, name='session_detail'), # Session 详情  | 
            |
| 52 | 
                - url(r'^p/(?P<photo>\w+)$', photo_views.photo_standard, name='photo_standard'), # standard thumbnail, available for free  | 
            |
| 53 | 
                - url(r'^m/(?P<photo>\w+)$', photo_views.photo_medium, name='photo_medium'), # medium/mobile version, without watermark, login or paid by others  | 
            |
| 54 | 
                - url(r'^l/(?P<photo>\w+)$', photo_views.photo_large, name='photo_large'), # large, might support server side panning later, login required  | 
            |
| 55 | 
                - url(r'^r/(?P<photo>\w+)$', photo_views.photo_raw, name='photo_raw'), # raw image, only for finishers  | 
            |
| 51 | 
                + url(r'^s/(?P<session_id>\w+)$', photo_views.session_detail, name='session_detail'), # Session 详情  | 
            |
| 52 | 
                + url(r'^p/(?P<photo_id>\w+)$', photo_views.photo_standard, name='photo_standard'), # standard thumbnail, available for free  | 
            |
| 53 | 
                + url(r'^m/(?P<photo_id>\w+)$', photo_views.photo_medium, name='photo_medium'), # medium/mobile version, without watermark, login or paid by others  | 
            |
| 54 | 
                + url(r'^l/(?P<photo_id>\w+)$', photo_views.photo_large, name='photo_large'), # large, might support server side panning later, login required  | 
            |
| 55 | 
                + url(r'^r/(?P<photo_id>\w+)$', photo_views.photo_raw, name='photo_raw'), # raw image, only for finishers  | 
            |
| 56 | 56 | 
                ]  | 
            
| 57 | 57 | 
                 | 
            
| 58 | 58 | 
                urlpatterns += [  | 
            
                @@ -68,17 +68,17 @@ class PhotosInfo(CreateUpdateMixin):  | 
            ||
| 68 | 68 | 
                def data(self):  | 
            
| 69 | 69 | 
                         return {
               | 
            
| 70 | 70 | 
                'pk': self.pk,  | 
            
| 71 | 
                - 'user': self.lensman_id,  | 
            |
| 72 | 
                - 'session': self.session_id,  | 
            |
| 73 | 
                - 'photo': self.photo_id,  | 
            |
| 71 | 
                + 'user_id': self.lensman_id,  | 
            |
| 72 | 
                + 'session_id': self.session_id,  | 
            |
| 73 | 
                + 'photo_id': self.photo_id,  | 
            |
| 74 | 74 | 
                }  | 
            
| 75 | 75 | 
                 | 
            
| 76 | 76 | 
                @property  | 
            
| 77 | 77 | 
                def detail(self):  | 
            
| 78 | 78 | 
                         return {
               | 
            
| 79 | 79 | 
                'pk': self.pk,  | 
            
| 80 | 
                - 'user': self.lensman_id,  | 
            |
| 81 | 
                - 'session': self.session_id,  | 
            |
| 82 | 
                - 'photo': self.photo_id,  | 
            |
| 80 | 
                + 'user_id': self.lensman_id,  | 
            |
| 81 | 
                + 'session_id': self.session_id,  | 
            |
| 82 | 
                + 'photo_id': self.photo_id,  | 
            |
| 83 | 83 | 
                'photo_url': self.p_photo_url,  | 
            
| 84 | 84 | 
                }  | 
            
                @@ -81,15 +81,15 @@ def uuid(request):  | 
            ||
| 81 | 81 | 
                # name with the symbol <. The difference between @ and < is then that @ makes a file get attached in the post as a file upload,  | 
            
| 82 | 82 | 
                # while the < makes a text field and just get the contents for that text field from a file.  | 
            
| 83 | 83 | 
                #  | 
            
| 84 | 
                -# curl -X POST -F user=xxxxxxx -F session=xxxxxxx -F photo_id=xxxxxxx -F photo=@xxxxxxx.jpg http://api.pai.ai/photos/upload  | 
            |
| 84 | 
                +# curl -X POST -F user_id=xxxxxxx -F session_id=xxxxxxx -F photo_id=xxxxxxx -F photo=@xxxxxxx.jpg http://api.pai.ai/photos/upload  | 
            |
| 85 | 85 | 
                def upload_photo(request):  | 
            
| 86 | 86 | 
                """  | 
            
| 87 | 87 | 
                上传图片  | 
            
| 88 | 88 | 
                :param request:  | 
            
| 89 | 89 | 
                :return:  | 
            
| 90 | 90 | 
                """  | 
            
| 91 | 
                -    lensman_id = request.POST.get('user', '')
               | 
            |
| 92 | 
                -    session_id = request.POST.get('session', '')
               | 
            |
| 91 | 
                +    lensman_id = request.POST.get('user_id', '')
               | 
            |
| 92 | 
                +    session_id = request.POST.get('session_id', '')
               | 
            |
| 93 | 93 | 
                     photo_id = request.POST.get('photo_id', '')
               | 
            
| 94 | 94 | 
                 | 
            
| 95 | 95 | 
                     photo = request.FILES.get('photo', '')
               | 
            
                @@ -261,18 +261,18 @@ def session_join_api(request):  | 
            ||
| 261 | 261 | 
                })  | 
            
| 262 | 262 | 
                 | 
            
| 263 | 263 | 
                 | 
            
| 264 | 
                -def session_detail(request, session):  | 
            |
| 265 | 
                - photos = PhotosInfo.objects.filter(session_id=session)  | 
            |
| 264 | 
                +def session_detail(request, session_id):  | 
            |
| 265 | 
                + photos = PhotosInfo.objects.filter(session_id=session_id)  | 
            |
| 266 | 266 | 
                     return render(request, 'photo/session_detail.html', {'photos': photos})
               | 
            
| 267 | 267 | 
                 | 
            
| 268 | 268 | 
                 | 
            
| 269 | 
                -def photo_standard(request, photo):  | 
            |
| 270 | 
                - photo = PhotosInfo.objects.get(photo_id=photo)  | 
            |
| 269 | 
                +def photo_standard(request, photo_id):  | 
            |
| 270 | 
                + photo = PhotosInfo.objects.get(photo_id=photo_id)  | 
            |
| 271 | 271 | 
                     return render(request, 'photo/photo_detail.html', {'photo_url': photo.p_photo_url})
               | 
            
| 272 | 272 | 
                 | 
            
| 273 | 273 | 
                 | 
            
| 274 | 
                -def photo_standard_api(request, photo):  | 
            |
| 275 | 
                - photo = PhotosInfo.objects.get(photo_id=photo)  | 
            |
| 274 | 
                +def photo_standard_api(request, photo_id):  | 
            |
| 275 | 
                + photo = PhotosInfo.objects.get(photo_id=photo_id)  | 
            |
| 276 | 276 | 
                     return JsonResponse({
               | 
            
| 277 | 277 | 
                'status': 200,  | 
            
| 278 | 278 | 
                'message': u'获取照片详情成功',  | 
            
                @@ -282,18 +282,18 @@ def photo_standard_api(request, photo):  | 
            ||
| 282 | 282 | 
                })  | 
            
| 283 | 283 | 
                 | 
            
| 284 | 284 | 
                 | 
            
| 285 | 
                -def photo_medium(request, photo):  | 
            |
| 286 | 
                - photo = PhotosInfo.objects.get(photo_id=photo)  | 
            |
| 285 | 
                +def photo_medium(request, photo_id):  | 
            |
| 286 | 
                + photo = PhotosInfo.objects.get(photo_id=photo_id)  | 
            |
| 287 | 287 | 
                     return render(request, 'photo/photo_detail.html', {'photo_url': photo.m_photo_url})
               | 
            
| 288 | 288 | 
                 | 
            
| 289 | 289 | 
                 | 
            
| 290 | 
                -def photo_large(request, photo):  | 
            |
| 291 | 
                - photo = PhotosInfo.objects.get(photo_id=photo)  | 
            |
| 290 | 
                +def photo_large(request, photo_id):  | 
            |
| 291 | 
                + photo = PhotosInfo.objects.get(photo_id=photo_id)  | 
            |
| 292 | 292 | 
                     return render(request, 'photo/photo_detail.html', {'photo_url': photo.l_photo_url})
               | 
            
| 293 | 293 | 
                 | 
            
| 294 | 294 | 
                 | 
            
| 295 | 
                -def photo_raw(request, photo):  | 
            |
| 296 | 
                - photo = PhotosInfo.objects.get(photo_id=photo)  | 
            |
| 295 | 
                +def photo_raw(request, photo_id):  | 
            |
| 296 | 
                + photo = PhotosInfo.objects.get(photo_id=photo_id)  | 
            |
| 297 | 297 | 
                     return render(request, 'photo/photo_detail.html', {'photo_url': photo.r_photo_url})
               | 
            
| 298 | 298 | 
                 | 
            
| 299 | 299 | 
                 |