小编Dan*_*iel的帖子

检查Django中模板内的权限

我可以在Django的模板中使用Auth应用程序的权限检查吗?(我想在特权用户的模板末尾显示一个简单的表单)

更重要的是,我应该这样做还是不是"Django方式"?

django django-authentication

72
推荐指数
3
解决办法
5万
查看次数

如何以编程方式在Spring中使用@Valid参数调用在@RequestMethod方法上运行的相同验证器?

我在一些字段上有一个带有hibernate验证注释的类(例如@NotNull@Size(min = 4, max = 50)等...)

public class MyClass {

    Long id;

    @NotEmpty
    @Size(min = 4, max = 50)
    String machineName;

    @NotEmpty
    @Size(min = 4, max = 50)
    String humanName;

    // Getters, setters, etc…
}
Run Code Online (Sandbox Code Playgroud)

我还有一个充当JSON API的自定义控制器,以及一个在调用API方法时创建MyClass对象的JSON反序列化器.在我的自定义控制器中,我有一个方法来创建该类型的新对象:

@RequestMapping(method = RequestMethod.POST)
public long createMyObject(@RequestBody @Valid MyClass newObj) {
    // Create the object in the database
    return newObj.getId();
}
Run Code Online (Sandbox Code Playgroud)

和另一种更新现有对象的方法

@RequestMapping(method = RequestMethod.PUT)
public void updateMyObject(@RequestBody MyClass updatedObj) {
    MyClass existingObj = // Get existing obj from DB …
Run Code Online (Sandbox Code Playgroud)

java spring hibernate-validator spring-validator

13
推荐指数
1
解决办法
9314
查看次数

mock.MagicMock(spec=SomeClass) 和mock.create_autospec(SomeClass) 有什么区别?

我试图了解这两个模拟构造之间的区别以及何时适合使用其中任何一个。我在解释器中测试了它,例如:

>>> mm = mock.MagicMock(spec=list)
>>> ca = mock.create_autospec(list)
>>> mm
<MagicMock spec='list' id='140372375801232'>
>>> mm()
<MagicMock name='mock()' id='140372384057808'>
>>> mm.append()
<MagicMock name='mock.append()' id='140372375724720'>
>>> mm().append()
<MagicMock name='mock().append()' id='140372375753104'>
>>> ca
<MagicMock spec='list' id='140372384059248'>
>>> ca()
<NonCallableMagicMock name='mock()' spec='list' id='140372384057040'>
>>> ca.append()
<MagicMock name='mock.append()' id='140372375719744'>
>>> ca().append()
<MagicMock name='mock().append()' id='140372375796848'>
>>> 
Run Code Online (Sandbox Code Playgroud)

但我不明白为什么“构建”使用创建的模拟create_autospec给了我 aNonCallableMagicMock并且MagicMock给了我更多MagicMock。该文档没有多大帮助。

python mocking python-unittest

12
推荐指数
1
解决办法
5029
查看次数

在构建docker镜像时尝试运行某些内容时出现"操作不受支持"错误

我正在尝试使用以下命令构建docker镜像:

docker build -f conf/Dockerfile -t my_app_name .
Run Code Online (Sandbox Code Playgroud)

Dockerfile与启动:

FROM ubuntu:14.04

COPY conf/pubkey pubkey
RUN echo 'deb http://downloads.skewed.de/apt/trusty trusty universe' >> /etc/apt/sources.list \
  && apt-key add pubkey \
  && rm pubkey
Run Code Online (Sandbox Code Playgroud)

它回来了INFO[0000] operation not supported.

无论我在RUN之后放了什么(甚至RUN echo 1失败)

我尝试在中间docker image(docker run a7bb092… -it /bin/sh)中运行一个shell,但这只是抛出FATA[0000] Error response from daemon: Cannot start container a7bb092…: operation not supported

我怎样才能解决这个问题?

docker dockerfile

9
推荐指数
1
解决办法
3935
查看次数

MD5是否可以在Android中与MessageDigest一起使用?

我想知道在我直截了当地忽略MessageDigest.getInstance("MD5")可以抛出的已检查异常之前,MD5摘要算法是否保证在所有Android设备中都可用.

android md5 message-digest

7
推荐指数
2
解决办法
995
查看次数

我的Xposed模块是否有自己的Context?

我希望能够从我的Xposed模块发布通知,显示祝酒词和启动/停止服务,为此我需要一个Context.我的Xposed模块是否有自己的Context?如果没有,我可以通过挂钩进入另一个进程吗?我想要进入哪个流程?

java android

6
推荐指数
1
解决办法
2164
查看次数

我可以在Android中以某种方式对R进行别名吗?

我有两个Android应用程序,它们共享90%的代码,并且由于政治原因(我认为也是技术原因)需要有单独的程序包名称(因此它们将出现在Google Play中的不同URL下)

我为每个应用程序使用带有两个分支的git,并在每次发布之前手动同步两个分支.当运行两个分支的diff命令时,我的很多文件都是不同的,实际上唯一不同的是自动生成的文件R的包名,所以对于第一个应用程序我有15个文件

import pkg.name.one.R;
Run Code Online (Sandbox Code Playgroud)

以及其他应用程序

import pkg.name.two.R;
Run Code Online (Sandbox Code Playgroud)

我想以某种方式导入R两个类的相同方式.

我试着像这样包装R:

包装thescene;

public class RWrapper {

    public class R extends pkg.name.one.R {}

}
Run Code Online (Sandbox Code Playgroud)

(这将RWrapper是这两个分支之间关于源的唯一不同文件或者R)但是唉R是最后一个类(我甚至不确定这会是否有效)

所以它有一种方式以某种方式为R类别名,使我可以import pkg.name.one.R; / import pkg.name.two.R;用统一的import语句替换它?

我也对其他可以解决我的同步问题的建议持开放态度:)

java git android android-resources

5
推荐指数
1
解决办法
340
查看次数

等待 su 中的命令完成

su在 Android 中运行一个进程,/system/bin/screencap每次用户摇晃手机时,该进程本身都会运行 screencap 实用程序 ( )。

我想等待每个屏幕截图完成,然后我才允许用户通过摇动手机来获取另一个屏幕截图。但是,使用process.waitFor()对我不起作用,因为我不想关闭su进程并为每个屏幕截图重新打开它(因为它会提示超级用户应用程序的吐司,这会干扰屏幕截图)

到目前为止,我有:

在服务的onCreate()

p = Runtime.getRuntime().exec("su");
os = p.getOutputStream();
Run Code Online (Sandbox Code Playgroud)

在震动侦听器处理程序中:

if (isReady) {
  isReady = false;
  String cmd = "/system/bin/screencap -p " + nextScreenshotFullPath + "\n";
  os.write(cmd.getBytes("ASCII"));
  os.flush();

  [INSERT MAGIC HERE]
  isReady = true;

  Bitmap bm = BitmapFactory.decodeFile(nextScreenshotFullPath);
  // Do something with bm
}
Run Code Online (Sandbox Code Playgroud)

[INSERT MAGIC HERE] 是我正在寻找的地方 - 等待screencap完成的代码片段。

android

5
推荐指数
1
解决办法
1417
查看次数

如何更改Eclipse插件中的默认IDetailPane?

我正在编写一个Eclipse插件,IDetailPane为调试器创建一个替代方案.

我创建了一个IDetailPaneFactory返回我IDetailPane的ID 的实现,并.getDetailPaneTypes(...)调用它的方法.

但是,现在这个领域DetailPaneManager.fPreferredDetailPanes是一个Map<Set<String>, String>内容:

{
  [DefaultDetailPane]=DefaultDetailPane
  [DefaultDetailPane, MyDetailPane]=DefaultDetailPane
}
Run Code Online (Sandbox Code Playgroud)

我想更改第二个项目,以便它将映射到"MyDetailPane".

这是一个用户设置,我可以在设置中的某处更改吗?(尝试在偏好中找到它但没有看到任何相关的东西).这是硬编码的吗?我可以更改插件中的某些内容Activator来控制它吗?(尝试在我的期间更改值Activator.start(...),但此时fPreferredDetailPanes不包含地图中的第2项)

java eclipse eclipse-plugin

5
推荐指数
1
解决办法
59
查看次数