我正在使用QTableView对象类型.这个对象包含几个在线,我使用这个模型:
class PaletteTableModel(QtCore.QAbstractTableModel):
def __init__(self,colors = [[]],headers =[],parent=None):
QtCore.QAbstractTableModel.__init__(self, parent)
self.__colors=colors
self._headers=headers
def rowCount(self,parent):
return len(self.__colors)
def columnCount(self,parent):
return 6
def headerData(self,section,orientation,role):
if role==QtCore.Qt.DisplayRole:
if orientation==QtCore.Qt.Horizontal:
return self._headers[section]
else:
return QtCore.QString("Credit %1").arg(section+1)
def data(self,index,role):
if role==QtCore.Qt.ToolTipRole:
row=index.row
return "Crédit"
if role==QtCore.Qt.EditRole:
row=index.row()
column=index.column()
return self.__colors[row][column]
if role==QtCore.Qt.DisplayRole:
row=index.row()
column=index.column()
value=self.__colors[row][column]
return value
def setData(self,index,value,role=QtCore.Qt.EditRole):
if role==QtCore.Qt.EditRole:
row =index.row()
column=index.column()
ch=(value)
self.__colors[row][column]=ch
self.dataChanged.emit(index,index)
return True
def flags(self, index):
return QtCore.Qt.ItemIsEnabled|QtCore.Qt.ItemIsEditable|QtCore.Qt.ItemIsSelectable
Run Code Online (Sandbox Code Playgroud)
我想要检索此tableView的所选行.任何人请帮助我,如果可能的话我想要一个python代码
我觉得这应该在互联网的某个地方得到解答,但我找不到它,也许是因为我没有找到正确的术语,但这就是问题:我有以下功能:
function ParentFunction (DataBase, Parameters) {
for (k = 0; k < DataBase.length; k++){
var CalendarURL = "https://www.google.com/calendar/feeds/" + DataBase.cid;
$.ajax({
url: CalendarURL,
dataType: 'json',
timeout: 3000,
success: function( data ) { succesFunction(data, k, Parameters);},
error: function( data ) { errorFunction ("Error",Parameters); }
});
}
}
Run Code Online (Sandbox Code Playgroud)
我在succesFunction(data,k,Parameters)中遇到错误,因为'k'始终使用最新值进行评估.发生的事情是,当for循环运行k正确增加但是,当执行回调函数successFunction时,通常在循环结束后几毫秒,它总是用k的最后一个值计算,而不是调用$ .ajax的循环.
我通过创建包含ajax调用的另一个函数来修复此问题.它看起来像这样:
function ParentFunction (DataBase, Parameters) {
for (k = 0; k < DataBase.length; k++){
var CalendarURL = "https://www.google.com/calendar/feeds/" + DataBase.cid;
AjaxCall(CalendarURL, k, Parameters);
}
}
function AjaxCall(URL, GroupIndex, Parameters) {
$.ajax({
url: …Run Code Online (Sandbox Code Playgroud) [[1, 2, 3],
[1, 2, 3],
[1, 2, 3],
[1, 2, 3],
**2**, # <-- HERE
[1, 2, 3],
[1, 2, 3],
[1, 2, 3]]
这是我目前的输出.如果你看一下上面的行,就会有一个2单独的行.
这是我使用的代码
someList.insert((index), 2)
Run Code Online (Sandbox Code Playgroud)
有没有办法2让它在前面的索引中
[[1, 2, 3],
[1, 2, 3],
[1, 2, 3],
[1, 2, 3],
[1, 2, 3, 2], # <-- HERE
[1, 2, 3],
[1, 2, 3],
[1, 2, 3]]
我收到这个错误,我不确定我做错了什么.我创建了表单,就像我从互联网上获得的那样.我按照这个例子https://wtforms-alchemy.readthedocs.org/en/latest/introduction.html#quickstart
class User(db.Model):
__tablename__= 'users'
DRIVER = 'driver'
ADMIN = 'admin'
username = db.Column('username', db.String(80), primary_key=True)
_pw_hash = db.Column('pw_hash', db.String(128), nullable=False)
_pw_salt = db.Column('pw_salt', db.String(20), nullable=False)
first_name = db.Column('full_name', db.String(100), nullable=False)
last_name = db.Column('last_name', db.String(100), nullable=False)
email = db.Column('email', db.String(120))
phone = db.Column('phone', db.String(20))
#acct_type = db.Column('acct_type', db.Enum(DRIVER, ADMIN), nullable=False)
def check_pw(self, pw):
return self._pw_hash == util.pwhash(pw, self._pw_salt)
@property
def _pw_hash(self):
return self._pw_hash
@_pw_hash.setter
def password(self, pw):
self._pw_salt = util.salt(20)
self._pw_hash = util.pwhash(pw, self._pw_salt)
def __init__(self, un, pw, first, …Run Code Online (Sandbox Code Playgroud) 我正在创建模型类Car,我希望在其中有两个引用一个外键.
class Car(models.Model):
owner = models.ForeignKey(User)
#and here I want to have owner email (which is already set in class User)
email = owner.email
Run Code Online (Sandbox Code Playgroud)
但我不知道如何引用已经使用过的ForeignKey字段.我收到此错误:
AttributeError:类型对象'用户'没有属性'email'
有什么办法吗?
python ×4
ajax ×1
django ×1
flask ×1
foreign-keys ×1
javascript ×1
jquery ×1
list ×1
model ×1
pyqt ×1
pyqt4 ×1
python-2.7 ×1
qtableview ×1
sqlalchemy ×1
wtforms ×1