问题列表 - 第26105页

如何在Ruby on Rails中存储私人图片和视频

这是一个故事:

  • 用户A应该能够上传图像.
  • 用户A应该能够设置隐私.("公开"或"私人").
  • 用户B不应该能够访问用户A的"私人"图像.

我打算使用Paperclip来处理上传.

如果我将图像存储在"RAILS_ROOT/public/images"下,任何猜测文件名称的人都可以访问这些文件.(例如,访问http://example.com/public/images/uploads/john/family.png)

我需要使用img标签显示图像,所以我不能放置文件,除了public.

如何确保其他人无法访问用户或组的图像?

(如果我用Paperclip无法做到这一点,那么什么是好的解决方案?)

privacy file-upload ruby-on-rails image

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

.NET 4.0中新的"动态"变量类型是否解决了CLR中的单/多方法调度问题?

单个调度的问题对于使用Java和C#等静态类型语言进行编码的人来说大多是熟悉的.基本思路是:

虽然运行时多态性允许我们根据类型(运行时类型)调度到正确的方法调用receiver,例如:

IAnimal mything = new Cat();
mything.chop();
Run Code Online (Sandbox Code Playgroud)

方法调用将根据运行时类型执行mything,即Cat.这是单一调度功能(存在于Java/C#中).

现在,如果您不仅需要调度接收器的运行时类型,还需要调度(多个)参数的类型,那么您将面临一个小问题:

public class MyAcceptor {  
    public void accept (IVisitor vst) {...}   
    public void accept (EnhancedConcreteVisitor vst) {...}  
}
Run Code Online (Sandbox Code Playgroud)

第二种方法永远不会被调用,因为在我们的"消费者"代码中,我们倾向于通过常见的超类型或接口来处理不同类型的对象(在我的示例中为访问者).

这就是我问的原因 - 因为动态类型允许多重调度多态,C#4.0有动态关键字;)

.net c# multiple-dispatch dynamic-typing c#-4.0

7
推荐指数
1
解决办法
1154
查看次数

JavaScript日期比较

可能重复:
使用JavaScript比较2个日期

我没有做太多的JavaScript.我想比较两个日期.来自jconsole:

a = ["01/01/2010","01/02/2010","01/03/2010"]

date1 = new Date('01/02/2010')
Sat Jan 02 2010 00:00:00 GMT-0800 (PST)

date2 = new Date(a[1])
Sat Jan 02 2010 00:00:00 GMT-0800 (PST)

date1 == date2
false
Run Code Online (Sandbox Code Playgroud)

有人能告诉我为什么这不匹配?

javascript

19
推荐指数
1
解决办法
3万
查看次数

有没有办法让iPad模拟器更大?

有点让我觉得iPad模拟器有多小......我想到的一些应用程序由于iPad模拟器体积小而难以测试.反正有没有比现在更大?

simulator ipad

42
推荐指数
1
解决办法
9108
查看次数

为什么我不能将const映射结构传递给c ++中的函数?

我试图传递const与矢量它的工作原理:例如:

void damn(const vector <bool> &bb)
{
    for (int i=0; i<bb.size(); i++)
        cout<<bb[i]<<endl;

}
Run Code Online (Sandbox Code Playgroud)

但是在尝试使用地图时,它不会:

void pas(const map <string, float> &mm)
{
    cout<<mm["a"];
    cout<<mm["b"];
}
Run Code Online (Sandbox Code Playgroud)

我想知道为什么不这样做.

c++ const map

10
推荐指数
3
解决办法
2330
查看次数

有关C++模板的问题

我使用了一个关于模板的测试程序的简单类,这就是我所做的:

template <typename T>
class test
{
public:
    test<T>::test();
    T out();
};

template <typename T>
test<T>::test()
{
}

T test<T>::out()
{
}

int main()
{
    //test<int> t;
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试编译它时说'T':未声明的标识符使用类模板需要模板参数列表,指向同一行,我已经实现了方法out().任何人都可以解释问题是什么?我正在使用visual studio 2008.

c++ templates

0
推荐指数
1
解决办法
125
查看次数

我在OS X 10.6上学习x86汇编,我该如何编译?

我即将在Mac OS X上学习x86汇编语言.我正在使用指令在commend窗口中编译汇编文件.但我有几个错误,我不知道如何通过.

这是错误和我的汇编代码,这很简单.

**ung-mi-lims-macbook-pro:pa2 ungmi$ as swap.s
swap.s:16:Unknown pseudo-op: .type
swap.s:16:Rest of line ignored. 1st junk character valued 115 (s).
swap.s:19:suffix or operands invalid for `push'
swap.s:46:suffix or operands invalid for `pop'
ung-mi-lims-macbook-pro:pa2 ungmi$** 
Run Code Online (Sandbox Code Playgroud)

而来源是

.text
        .align 4
.globl  swap
        .type swap,@function

swap:
        pushl   %ebp
        movl    %esp, %ebp

        movl    %ebp, %esp
        popl    %ebp
        ret
Run Code Online (Sandbox Code Playgroud)

我搜索了一些解决方案,这是我必须把 - 比i386

**ung-mi-lims-macbook-pro:pa2 ungmi$ as -arch i386 swap.s
swap.s:16:Unknown pseudo-op: .type
swap.s:16:Rest of line ignored. 1st junk character valued 115 (s).
ung-mi-lims-macbook-pro:pa2 ungmi$** 
Run Code Online (Sandbox Code Playgroud)

你能救我吗?只是让我知道编译汇编文件需要什么.我已经有了XCode,我宁愿用commend …

x86 assembly

4
推荐指数
1
解决办法
5717
查看次数

38
推荐指数
1
解决办法
7790
查看次数

Tomcat 的 HTTP 连接器的 maxPostSize 的目的是什么?

根据 Tomcat 文档:

将由容器 FORM URL 参数解析处理的 POST 的最大大小(以字节为单位)。可以通过将此属性设置为小于或等于 0 的值来禁用该限制。如果未指定,则此属性设置为 2097152(2 兆字节)。

但是什么是“容器FORM URL参数解析”?任何想法“maxPostSize”的目的是什么?

提前致谢。

java tomcat

4
推荐指数
1
解决办法
4462
查看次数

覆盖Google App Engine中的save,put,get等方法

是否可以在Google App Engine中覆盖db.Model的方法?我想声明beforeSave,afterSave方法等.创建自动标记系统.

我知道有钩子,但在我看来解决这个问题是错误的方法:)

谢谢!

google-app-engine overriding

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