Orchardcms Orchard CMS模块没有来自编辑器的值
我已经创建了我的第一个简单模块,但由于某种原因,我的编辑器似乎没有从表单中获取任何值 该代码基本上是对Maps模块示例的一个轻微修改。为了简明扼要,我删减了用法等等。示例如下: 编辑:我把范围缩小到我的bool和DateTime属性。如果我只使用字符串和整数,我的模块将按预期工作。我在modules目录中查看了其他迁移,它们使用通用列方法。我试过了,但还是没能成功 型号:Orchardcms Orchard CMS模块没有来自编辑器的值,orchardcms,orchardcms-1.8,Orchardcms,Orchardcms 1.8,我已经创建了我的第一个简单模块,但由于某种原因,我的编辑器似乎没有从表单中获取任何值 该代码基本上是对Maps模块示例的一个轻微修改。为了简明扼要,我删减了用法等等。示例如下: 编辑:我把范围缩小到我的bool和DateTime属性。如果我只使用字符串和整数,我的模块将按预期工作。我在modules目录中查看了其他迁移,它们使用通用列方法。我试过了,但还是没能成功 型号: namespace Maps.Models { public class MapRecord : ContentPa
namespace Maps.Models
{
public class MapRecord : ContentPartRecord
{
public virtual int SenderId { get; set; }
public virtual int RecipientId { get; set; }
public virtual string Subject { get; set; }
public virtual string Body { get; set; }
public virtual DateTime Timestamp { get; set; }
public virtual bool Read { get; set; }
public virtual int ReplyTo { get; set; }
}
public class MapPart : ContentPart<MapRecord>
{
[Required]
public int SenderId
{
get { return Record.SenderId; }
set { Record.SenderId = value; }
}
[Required]
public int RecipientId
{
get { return Record.RecipientId; }
set { Record.RecipientId = value; }
}
[Required]
public string Subject
{
get { return Record.Subject; }
set { Record.Subject = value; }
}
[Required]
public string Body
{
get { return Record.Body; }
set { Record.Body = value; }
}
[Required]
public DateTime Timestamp
{
get { return Record.Timestamp; }
set { Record.Timestamp = value; }
}
[Required]
public bool Read
{
get { return Record.Read; }
set { Record.Read = value; }
}
[Required]
public int ReplyTo
{
get { return Record.ReplyTo; }
set { Record.ReplyTo = value; }
}
}
}
迁移.cs
public class Migrations : DataMigrationImpl {
public int Create() {
// Creating table MapRecord
SchemaBuilder.CreateTable("MapRecord", table => table
.ContentPartRecord()
.Column<int>("RecipientId")
.Column<int>("SenderId")
.Column<string>("Subject")
.Column<string>("Body")
.Column<DateTime>("Timestamp")
.Column<bool>("Read")
.Column<int>("ReplyTo")
);
ContentDefinitionManager.AlterPartDefinition(
typeof(MapPart).Name, cfg => cfg.Attachable());
return 1;
}
}
如果这与示例类似,则可能存在两个问题。1可能您尚未添加放置文件。如果迁移成功并且没有放置文件,那么您将看不到数据。2如果迁移失败,另一个可能的解决方案是它没有正确的bool和DateTime数据类型。请改为尝试DBType.Boolean和DBType.DateTime。让我知道这是否对您有效。您的迁移是什么样子的?@devqon我已将迁移添加到问题中。您是否添加了内容处理程序?是的,但与示例相比没有更改。我将把它添加到问题中。尝试将您的记录重命名为MapPartRecord。最初,我将迁移为.Columnname、DBType.DateTime等,但这不起作用,因此我尝试使用泛型方法。还是没有骰子。谢谢你的主意。我仍然没有解决这个问题——我只是继续前进,稍后会回来尝试解决。对我来说,这更像是一个概念的证明,而不是一件严肃的事情。