标签: mapping

字典/地图/哈希的Python命名约定

虽然其他问题已经解决了更广泛的序列模块类别,但我提出这个非常具体的问题:

"你为字典使用什么命名约定?为什么?"

我一直在考虑的一些命名约定样本:

# 'value' is the data type stored in the map, while 'key' is the type of key
value_for_key={key1:value1, key2,value2}
value_key={key1:value1, key2,value2}
v_value_k_key={key1:value1, key2,value2}
Run Code Online (Sandbox Code Playgroud)

不要因为"因为我的工作告诉我"而回答"为什么",而不是非常有帮助.推动选择的原因更为重要.除了可读性之外,字典命名约定还有其他任何好的注意事项吗?

编辑:

选择答案: value_key_map

选择答案的原因:允许代码审阅者快速,轻松地找出地图的关键字和值,以及它是一张地图而无需查看其他任何地方.

python mapping dictionary naming-conventions

38
推荐指数
5
解决办法
2万
查看次数

如何通过AutoMapper将匿名对象映射到类?

我有一个实体:

public class Tag {
    public int Id { get; set; }
    public string Word { get; set; }
    // other properties...
    // and a collection of blogposts:
    public ICollection<Post> Posts { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

和模型:

public class TagModel {
    public int Id { get; set; }
    public string Word { get; set; }
    // other properties...
    // and a collection of blogposts:
    public int PostsCount { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我查询这样的实体(通过EFNH):

var tagsAnon = …
Run Code Online (Sandbox Code Playgroud)

c# mapping anonymous-types automapper

38
推荐指数
2
解决办法
2万
查看次数

在SQLAlchemy中将类映射到多个表

# ! /usr/bin/env python
# -*- coding: utf-8 -*-
# login_frontend.py

""" Python        2.7.3
    Cherrypy      3.2.2
    PostgreSQL    9.1
    psycopy2      2.4.5
    SQLAlchemy    0.7.10
"""
Run Code Online (Sandbox Code Playgroud)

我在一个Python/SQLAlchemy类中连接四个表时遇到问题.我正在尝试这个,所以我可以迭代这个类的实例,而不是我从连接ORM表中得到的命名元组.

为什么这一切?因为我已经开始这样了,而且我走得太远,只是离开它.此外,它必须是可能的,所以我想知道它是如何完成的.

对于这个项目(cherrypy web-frontend),我得到了一个已经完成的包含表类的模块.我把它移到了这篇文章的底部,因为也许你甚至都不需要它.

以下只是联接多表类尝试的一个示例.我选择了一个简单的案例,其中只有两个表和一个联结表.在这里,我不会写入这些连接表,但它在其他地方是必要的.这就是为什么类可以很好地解决这个问题.


我尝试加入课程,

这是给定的表类模块和这两个网站的示例的组合:

- 针对多个表映射类
- SQLAlchemy:一个类 - 两个表

class JoinUserGroupPerson (Base):

    persons = md.tables['persons']
    users = md.tables['users']
    user_groups = md.tables['user_groups']
    groups = md.tables['groups']

    user_group_person =(
        join(persons, users, persons.c.id == users.c.id).
        join(user_groups, users.c.id == user_groups.c.user_id).
        join(groups, groups.c.id == user_groups.c.group_id))

    __table__ = user_group_person

    """ I expanded the redefinition of 'id' to three tables,
        and …
Run Code Online (Sandbox Code Playgroud)

python mapping orm sqlalchemy cherrypy

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

用于映射字符串列表或int列表的实体框架选项(List <string>)

我想使用EF存储包含基元列表的对象.

public class MyObject {
    public int Id {get;set;}
    public virtual IList<int> Numbers {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

我知道EF无法存储,但我想知道解决这个问题的可能解决方案.

我能想到的2个解决方案是:

1. 创建一个具有Id和整数值的虚拟对象,例如

public class MyObject {
    public int Id {get;set;}
    public virtual IList<MyInt> Numbers {get;set;}
}

public class MyInt {
    public int Id {get;set;}
    public int Number {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

2. 将列表值存储为blob,例如

public class MyObject {
    public int Id {get;set;}

    /// use NumbersValue to persist/load the list values
    public string NumbersValue {get;set;}

    [NotMapped]
    public virtual IList<int> Numbers { …
Run Code Online (Sandbox Code Playgroud)

mapping orm entity-framework list

37
推荐指数
2
解决办法
2万
查看次数

在使用JPA映射类时,为什么有人会在getter或setter上添加注释?

主题说明了一切......到目前为止,我认为人们没有在吸气剂和/或制定者上声明注释的优势.对我来说,这只会带来在类上传播注释的缺点,这会使类更难以理解.

将注释放在字段上会明显减少需要帮助时要发布的代码量.这只是一个很小的优势.但是对方法进行注释对我没有任何意义.

java mapping annotations hibernate jpa

36
推荐指数
2
解决办法
2万
查看次数

错误3004:从行开始映射片段时出现问题

构建我的Web服务时出现此错误:

错误3004:从第323行开始的映射片段中的问题:没有为属性JE_TRN_HS.JE_HDR_HSJE_HDR_KEY指定映射.实体是类型[TESTCPModel.JE_TRN_HS

这就是发生的事情.我从现有数据库创建了这个实体数据模型.我添加了2个表并重建了Web服务.构建成功.

然后我在两个表之间添加了一个关联.当我尝试重建它失败时显示上面的错误消息!

现在这里是踢球者!我删除了新添加的协会并重建.构建失败并显示相同的错误消息!?我可以摆脱这个错误的唯一方法是,如果我删除第二个表,重建并重新添加第二个表?

我一直在寻找解决这个问题的方法!谢谢Steve

database mapping entity-relationship entity-framework edmx

36
推荐指数
4
解决办法
6万
查看次数

如何使elasticsearch为所有索引中的每个文档添加时间戳字段?

Elasticsearch专家,

我一直无法找到一种简单的方法来告诉ElasticSearch为所有索引(以及所有文档类型)中添加的所有文档插入_timestamp字段.

我看到了一个特定类型的例子:http: //www.elasticsearch.org/guide/reference/mapping/timestamp-field/

并且还查看特定类型的所有索引的示例(使用_all):http://www.elasticsearch.org/guide/reference/api/admin-indices-put-mapping/

但是我无法找到任何关于添加它的文档,无论索引和类型如何,都会添加它.

mapping timestamp elasticsearch

34
推荐指数
4
解决办法
5万
查看次数

如何在带有注释映射的Spring MVC中使用不区分大小写的URL

通过我的spring mvc web应用程序,我有注释的映射工作,但是,它们区分大小写.我找不到让它们不区分大小写的方法.(我很乐意在Spring MVC中实现这一点,而不是以某种方式重定向流量)

java mapping spring-mvc case-insensitive

33
推荐指数
4
解决办法
2万
查看次数

使用AutoMapper将对象的属性映射到字符串

我有以下型号:

public class Tag
{
    public int Id { get; set; }
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我希望能够使用AutoMapper NameTag类型的属性映射到我的一个viewmodel中的字符串属性.

我使用以下代码创建了一个自定义解析器来尝试处理此映射:

public class TagToStringResolver : ValueResolver<Tag, string>
    {
        protected override string ResolveCore(Tag source)
        {
            return source.Name ?? string.Empty;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我使用以下代码进行映射:

Mapper.CreateMap<Tag, String>()
    .ForMember(d => d, o => o.ResolveUsing<TagToStringResolver>());
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,我收到错误:

仅对类型上的顶级单个成员支持成员的自定义配置.

我究竟做错了什么?

.net c# mapping automapper automapper-2

33
推荐指数
2
解决办法
2万
查看次数

将一个对象映射到另一个对象的最佳实践

我的问题是,以最可维护的方式将一个对象映射到另一个对象的最佳方法是什么.我无法改变我们获得的Dto对象设置为更规范化的方式,因此我需要创建一种方法将其映射到我们对象的实现.

以下示例代码显示了我需要发生的事情:

class Program
{
    static void Main(string[] args)
    {
        var dto = new Dto();

        dto.Items = new object[] { 1.00m, true, "Three" };
        dto.ItemsNames = new[] { "One", "Two", "Three" };            

        var model = GetModel(dto);

        Console.WriteLine("One: {0}", model.One);
        Console.WriteLine("Two: {0}", model.Two);
        Console.WriteLine("Three: {0}", model.Three);
        Console.ReadLine();
    }

    private static Model GetModel(Dto dto)
    {
        var result = new Model();

        result.One = Convert.ToDecimal(dto.Items[Array.IndexOf(dto.ItemsNames, "One")]);
        result.Two = Convert.ToBoolean(dto.Items[Array.IndexOf(dto.ItemsNames, "Two")]);
        result.Three = dto.Items[Array.IndexOf(dto.ItemsNames, "Three")].ToString();

        return result;
    }
}

class Dto
{
    public object[] Items …
Run Code Online (Sandbox Code Playgroud)

c# mapping design-patterns

33
推荐指数
4
解决办法
9万
查看次数