0

我正在尝试将新的 cqlengine 模型作为 datastax 驱动程序的一部分。,在这里我无法从类中获取table_name

from cassandra.cqlengine.models import Model

class User(Model):
    uid         = columns.UUID(primary_key=True,default=uuid.uuid4)
    fname       = columns.Text(primary_key=True,required=True)
    lname       = columns.Text(primary_key=True,required=True)
    user_id     = columns.Text(primary_key=True,required=True)
    email_id    = columns.Text(primary_key=True,required=True)
    password    = columns.Text(primary_key=True,required=True)
    salt        = columns.Text(required=True)

用户。table_name没有给我。

我需要设置这个吗?

从文档

模型。表名

可选的。设置此模型的 CQL 表的名称。如果留空,表名将是模型的名称,其前缀是模块名称。手动定义的表名不会被继承。

4

1 回答 1

2

正如邮件列表中所回答的那样,考虑到__table_name__也可以根据模型的名称动态计算,获取表名的方式是使用User.column_family_name(include_keypspace=False)

于 2016-03-17T06:45:54.220 回答