我在Django中有这样的模型:
class File(models.Model):
users = models.ForeignKey(User)
file_name = models.CharField(max_length=100)
type = models.CharField(max_length=10)
source = models.CharField(max_length=100)
start_date = models.TextField()
end_date = models.TextField()
duration = models.TextField()
size = models.TextField()
flag = models.TextField()
#delete_date = models.CharField(max_length=100, null=True, blank=True)
class Share(models.Model):
users = models.ForeignKey(User)
files = models.ForeignKey(File)
shared_user_id = models.IntegerField()
shared_date = models.TextField()
Run Code Online (Sandbox Code Playgroud)
我正在尝试提取登录用户共享的文件.我只是在Share中查询
file_s = Share.objects.filter(users_id=log_id)
Run Code Online (Sandbox Code Playgroud)
这将提取登录用户共享的文件.因为,现在我知道登录用户共享了哪个文件,我试图从文件表中获取文件信息:
shared_file = File.objects.filter(users_id=file_s)
Run Code Online (Sandbox Code Playgroud)
但这是回归:
DatabaseError at /shared_by_me/
(1242, 'Subquery returns more than 1 row')
#my_views
def shared_by_me(request):
log_id = request.user.id
username = request.user.username
#shared_file = File.objects.filter(users_id=file) …Run Code Online (Sandbox Code Playgroud) 如果我按顺序输入299,399,10,5,计算机应该给我一个答案5.但它给了我-5.为什么不5?这让我很困惑.救命!!
#include "stdafx.h"
#include <iostream>
int add(int x, int y)
{
int a=x-y;
return a;
}
int x(int a)
{
std::cin >> a;
return a;
}
int y(int a)
{
std::cin >> a;
return a;
}
int main()
{
int a;
int b;
std::cin >> a;
std::cin >> b;
std::cout << add(x(a), y(b));
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我有这样的课:
template<size_t MAX_SIZE>
struct Buffer{
size_t size;
char data[MAX_SIZE]; // this must be inside the struct itself
constexpr static size_t max_size = MAX_SIZE;
};
Run Code Online (Sandbox Code Playgroud)
我需要能够将此类传递给不应该使用模板的函数,目前我正在做这样的事情:
void process(size_t &size, char *data, size_t max_size);
int main(){
Buffer<1024> b;
process(b.size, b.data, b.max_size);
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来做同样的事情?我可以考虑基类,并通过引用传递,但它太复杂,不正确.
(这不是实际代码,如果存在语法错误,请不要注意.)
我有一个制表符分隔文件,file.txt其内容如下:
word11 word12 word13 word14
word21 word22 word23 word24
word31 word32 word33 word34
word41 word42 word43 word44
Run Code Online (Sandbox Code Playgroud)
我想将每个列复制到不同的文件中.例如:第一个文件将包含:
word11
word21
word31
word41
Run Code Online (Sandbox Code Playgroud)
第二个文件将包含:
word12
word22
word32
word42
Run Code Online (Sandbox Code Playgroud)
我写了相同的脚本(有12列):
for i in {1..12}
do
awk -F "\t" '{print $i}' file.txt > /tmp/output-$i.txt
done
Run Code Online (Sandbox Code Playgroud)
但是所有输出文件都包含所有数据:
word11 word12 word13 word14
word21 word22 word23 word24
word31 word32 word33 word34
word41 word42 word43 word44
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助.