几乎所有人都在标题中说.我已经更新到Aptana(在Windows上)的最新版本,现在我的解释器不起作用.我重新创建了PYTHONPATH变量,删除并重新配置了python解释器Aptana,删除并在我的项目中重新创建它,仍然没有工作...
它给了我以下错误:
The interpreter configured does not exist in the filesystem
Run Code Online (Sandbox Code Playgroud)
各种错误如:
Description Resource Path Location Type
Undefined variable: None models.py line 48 PyDev Problem
Run Code Online (Sandbox Code Playgroud)
最糟糕的是,我在一个django应用程序上工作.我可以把它发射好,唯一的问题在于Aptana.任何线索?
我正在尝试使用 Django Rest Framework 强制执行权限,其中特定用户无法发布包含不是他的用户 ID 的对象。
例如,我不希望用户使用另一个 id 发布反馈。
我的模型是这样的:
class Feedback(Model):
user = ForeignKey(User)
...
Run Code Online (Sandbox Code Playgroud)
我尝试对我的视图授予权限,该权限会将feedback.user.id 与request.user.id 进行比较,正确处理对象上的帖子并返回false,但它仍在发布我的对象......为什么?
风景
class FeedbackViewSet(ModelViewSet):
model = Feedback
permission_classes = (IsSelf,)
serializer_class = FeedbackSerializer
def get_queryset(self):
....
Run Code Online (Sandbox Code Playgroud)
许可
class IsSelf(permissions.BasePermission):
def has_object_permission(self, request, view, obj):
#return eval(obj.user.id) == request.user.id
return False
Run Code Online (Sandbox Code Playgroud)
我已经注释了该行以显示问题所在。该函数再次被正确调用并返回 False,但没有引发 PermissionDenied。在此期间,我想知道这是否真的是实现这种行为的方式,如果不是,那会是什么......?谢谢。