假设我Button在Python中使用Tkinter进行了以下操作:
import Tkinter as Tk
win = Tk.Toplevel()
frame = Tk.Frame(master=win).grid(row=1, column=1)
button = Tk.Button(master=frame, text='press', command=action)
Run Code Online (Sandbox Code Playgroud)
action当我按下按钮时调用该方法,但是如果我想将一些参数传递给方法action怎么办?
我尝试过以下代码:
button = Tk.Button(master=frame, text='press', command=action(someNumber))
Run Code Online (Sandbox Code Playgroud)
这只是立即调用方法,按下按钮什么都不做.
我正在尝试拍摄图像并使用Node.js将其上传到Amazon S3存储桶.最后,我希望能够将图像推送到S3,然后能够访问该S3 URL并在浏览器中查看图像.我正在使用Curl查询来执行HTTP POST请求,并将图像作为正文.
curl -kvX POST --data-binary "@test.jpg" 'http://localhost:3031/upload/image'
然后在Node.js方面,我这样做:
exports.pushImage = function(req, res) {
var image = new Buffer(req.body);
var s3bucket = new AWS.S3();
s3bucket.createBucket(function() {
var params = {Bucket: 'My/bucket', Key: 'test.jpg', Body: image};
// Put the object into the bucket.
s3bucket.putObject(params, function(err) {
if (err) {
res.writeHead(403, {'Content-Type':'text/plain'});
res.write("Error uploading data");
res.end()
} else {
res.writeHead(200, {'Content-Type':'text/plain'});
res.write("Success");
res.end()
}
});
});
};
Run Code Online (Sandbox Code Playgroud)
我的文件是0字节,如Amazon S3上所示.我该如何制作它以便我可以使用Node.js将二进制文件推送到S3?我对二进制数据和缓冲区做错了什么?
更新:
我发现了我需要做的事情.curl查询是应该更改的第一件事.这是工作的:
curl -kvX POST -F foobar=@my_image_name.jpg 'http://localhost:3031/upload/image'
然后,我添加了一行来转换为Stream.这是工作代码:
exports.pushImage = …Run Code Online (Sandbox Code Playgroud) 我有一个项目,我正在尝试使用Travis CI自动化测试.我有一个dev分支和一个测试分支,它们有不同的环境变量.例如,在dev分支上,我需要连接到不同于环境变量指定的测试分支的API.因此,当我在Travis上的dev分支上运行构建时,如何设置它以便它只使用dev环境变量集进行测试,同样用于在测试分支上构建?
我有一个用户的仪表板页面,其中左侧有一个侧栏,其中包含项目,博客等链接.我希望能够单击"项目"链接等链接,然后在主区域中查看项目视图加载(视图将是项目的项目符号列表),而无需刷新页面.我试图用AJAX来实现这一点,但事情并没有奏效.
这就是我认为应该如何运作的方式.用户点击侧边栏链接show.html.erb
<%= link_to 'Projects', '/dash', remote: true %>
Run Code Online (Sandbox Code Playgroud)
where /dash配置为路由到用户#在config/routes.rb文件中显示如下:
match '/dash' => 'users#show'
Run Code Online (Sandbox Code Playgroud)
然后,show在users_controller.rb控制器中调用该操作:
def show
@user = User.find(params[:id])
@projects = @user.projects
respond_to do |format|
format.html # renders show.html.erb
format.js # renders show.js.erb
end
end
Run Code Online (Sandbox Code Playgroud)
在哪里show.js.erb执行.我的show.js.erb文件有这一行:
$('#ajax').html("<%= escape_javascript(render(:partial => 'projects/index')).html_safe %>");
Run Code Online (Sandbox Code Playgroud)
这应该修改我的#ajax div show.html.erb:
<div id="ajax">
<%= render :template => 'projects/index' %>
</div>
Run Code Online (Sandbox Code Playgroud)
将app/views/projects/index.html.rb在@projects需要并给出了一个列表,就像这样:
<% @projects.each do |project| %>
<p><%= project.name %></p>
<% …Run Code Online (Sandbox Code Playgroud) 当我尝试使用py2exe将python程序构建到Windows .exe中时,我遇到了错误,并且我的程序没有构建.它说我缺少一些模块,比如numpy模块.我确定numpy安装正确.为什么说我缺少模块?我该如何解决?
*** copy dlls ***
copying C:\Python27\lib\site-packages\py2exe\run.exe -> C:\Users\jchan1\Desktop\copdata\dist\dplotNew.exe
The following modules appear to be missing
['Carbon', 'Carbon.Files', 'Image', 'Numeric', 'Pyrex.Compiler.Main', '__svn_version__',
'_curses', '_scproxy', '_transforms', 'configparser', 'copyreg', 'core.abs', 'core.max',
'core.min', 'core.round', 'fcompiler.FCompiler', 'fcompiler.show_fcompilers', 'gobject',
'mpl_toolkits.natgrid', 'nose', 'nose.plugins', 'nose.plugins.base', 'nose.plugins.builtin',
'nose.plugins.errorclass', 'nose.plugins.manager', 'nose.tools', 'nose.util', 'numarray',
'numpy_distutils', 'numpy_distutils.command.build_flib', 'numpy_distutils.command.cpuinfo',
'numpy_distutils.cpuinfo', 'numpy_distutils.fcompiler', 'numscons', 'numscons.core.utils',
'pkg_resources', 'projections.get_projection_class', 'projections.get_projection_names',
'projections.projection_factory', 'pyemf', 'qt', 'scipy', 'setuptools', 'setuptools.command',
'setuptools.command.bdist_rpm', 'setuptools.command.develop', 'setuptools.command.egg_info',
'setuptools.command.install', 'setuptools.command.sdist', 'sitecustomize', 'testing.Tester',
'usercustomize', 'win32api', 'win32con', 'win32pdh', 'win32pipe', 'wx', 'numpy.absolute',
'numpy.arccos', 'numpy.arccosh', 'numpy.arcsin', 'numpy.arcsinh', 'numpy.arctan', …Run Code Online (Sandbox Code Playgroud) 我正在尝试进行查询,以获取每年的演员阵容全部不是男性的电影数量(每年,计算当年没有男性的电影数量)。
这些是表格:
ACTOR (id, fname, lname, gender)
MOVIE (id, name, year)
CASTS (pid, mid, role) -- pid refers to actor id, mid refers to movie id
Run Code Online (Sandbox Code Playgroud)
这就是我索引的内容(id因为表是主键,所以它们已经被索引,或者我假设是这样):
CREATE INDEX gender_index on actor(gender);
CREATE INDEX movie_name_index on movie(name);
CREATE INDEX movie_year_index on movie(year);
CREATE INDEX casts_index on casts(pid, mid, role);
CREATE INDEX casts_pid_index on casts(pid);
CREATE INDEX casts_mid_index on casts(mid);
CREATE INDEX casts_role_index on casts(role);
Run Code Online (Sandbox Code Playgroud)
这是我的查询:
SELECT m.year, count(m.id)
FROM movie as m
WHERE m.id NOT IN (
SELECT …Run Code Online (Sandbox Code Playgroud) 他们使用Xcode 4进行了一些更改,所以我想知道是否需要通过以下方式初始化NSSet:
NSMutableSet *variablesUsed = [NSMutableSet set];
Run Code Online (Sandbox Code Playgroud)
或者是
NSMutableSet *variablesUsed;
Run Code Online (Sandbox Code Playgroud)
足够?还是第二个选项初始化为nil?这和空集一样吗?
谢谢你的帮助!
我正在使用ExpressJS(基于Node.js)推送到Amazon S3.我是新手,所以,我复制了亚马逊提供的示例,我看到在S3管理控制台中,有一个额外的文件与我正在创建的存储桶同名.我的代码中有哪部分是这样做的?
// Create a bucket using bound parameters and put something in it.
var s3bucket = new AWS.S3({params: {Bucket: 'test_bucket/sub_bucket'}});
s3bucket.createBucket(function() {
var data = {Key: 'result', Body: 'Hello!'};
s3bucket.putObject(data, function(err, data) {
if (err) {
console.log("Error uploading data: ", err);
} else {
res.writeHead(200, {'Content-Type':'text/plain'});
res.write("Successfully uploaded data to test_bucket/sub_bucket/");
res.end()
}
});
});
Run Code Online (Sandbox Code Playgroud) 我有点困惑为什么我不能这样初始化一个getter:
@synthesize stack = _stack;
- (NSMutableArray *) stack
{
if (self.stack == nil) {
self.stack = [[NSMutableArray alloc] init];
}
return self.stack;
}
Run Code Online (Sandbox Code Playgroud)
我知道如果我用_stack替换self.stack,它将完美地工作,但我只是不知道为什么我不能使用self.stack.我稍后在代码中使用self.stack而没有问题.