我正在为云存储创建一个web应用程序,用户可以在其中创建文件夹和上传文件。我想为如下文件创建一个模型:
class upload(models.Model):
files = # array of files which I don't know how to create
title = models.CharField(max_length = 30)
user = models.ForeignKey(User,on_delete=models.CASCADE)
如果有人建议我怎么做,或者告诉我上传文件和使用它的任何其他有效的方法,我将非常感谢。
我正在我的Debian压缩服务器上运行vsftpd。我将其配置为将本地用户调色到其/home/目录中。现在,问题是用户的网页在他们的/ home /目录之外(这是为了允许非世界可读的主目录)。但是用户应该能够上传文件到他们的网页。现在,我认为最好使用虚拟用户,这样他们就可以使用他们正常的用户名/密码组合来访问他们的主目录,并且像username.web这样的东西来访问他们的网页。现在,是否有一种方法来配置vsftpd,使我不必每次添加一个新的“真实”用户时都创建一个虚拟用户?以及允许用户在username.web登录时使用正常密码的方法?
这里是带有图像字段的样本模型。
MyModel {
model:string
color:string
mymodel_image:string // <= here the image field
//is designed to be string like http://domian.com/api/images/dasfs05fsd44f,png
...
}
我面临的问题是在回环上创建(写)这个模型(带有图像字段)。以下是我迄今为止尝试过的两种方法
首先上传图像,然后作为响应获取图像two,然后将MyModel数据与此图像two(即2 http
我们有一个从模型生成的Web API Controller。该模型具有以下形式:
public class Pdf
{
public int ID { get; set; }
public string Name { get; set; }
public string Url { get; set; } // File stored in AWS
public int Job_ID { get; set; }
public List<PdfPage> { get; set; }
}
自动生成的控制器具有此默认POST路由:
// POST:
我使用Web API模型绑定来解析来自URL的查询参数。例如,下面是一个模型类:
public class QueryParameters
{
[Required]
public string Cap { get; set; }
[Required]
public string Id { get; set; }
}
当我调用像/api/values/5?cap=somecap&id=1这样的东西时,它工作得很好。
有没有什么方法可以更改模型类中属性的名称,但保持查询参数名称不变-例如:
public class QueryParameters
{
测试Web API用于文件上传,有一个简单的视图模型,如下所示:
public class TestModel {
public string UserId {get;set;}
public HttpPostedFileBase ImageFile {get;set;}
}
在该方法中使用:
[HttpPost]
public void Create(TestModel model)
当我尝试将一个多部分/表单数据编码的表单发布到操作时,我收到了这个异常:
System.InvalidOperationException: No MediaTypeFormatter is a
因此,似乎有几个人(如和)对MVC4模型绑定ApiControllers存在问题,但似乎没有一个人能很好地解决我所看到的问题。
我真正想做的就是更改整数列表的数组绑定行为。所以假设我有这样一个请求类型:
public class MyRequestModel
{
public List<long> ListOfIntegers { get; set; }
...
}
API GET方法如下所示:
public ResultsResponseModel Get(MyRequestModel request)
{
// use request.ListOfIn
我创建了一个方法,以便使用web api将图像上传到我的服务器。但是,在发送多部分表单数据时,我需要发送额外的参数。我想要做的是创建一个方法,通过查看这些参数来获取所需的参数并上传到所需的位置。方法如下所示
public void AddPhotoItemData( int UserID, int QuestID, int QuestTemplateItemID, double Latitude, double Longitude)
我不能做的是触发此方法,同时发送多部分表单数据和这些参数。有没有办法用带参数的方法来上传文件?
问候你,凯马尔