如果queryParams没有更改(并且它们设置为refreshModel:true),如何在重新转换到相同路由时触发模型挂钩?
例如,现在我正在使用queryParam itemCount = 0进行路径'对话',它从我的后端请求10个对话。当我从商店卸载对话时,我现在有9个对话。
我想从我的后端重新获取10个会话(所以我总是至少有10个会话)但是使用相同的queryParam itemCount = 0.我该怎么办?
我在我想要刷新模型的控制器中尝试了这个:
import re
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from itertools import product
def getPoints(l,n):
strPoints = [l[i:i+n-1] for i in range(0,len(l),n)]
points = [list(map(float, row)) for row in strPoints]
return points
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
f = open('data.txt','r')
d = ''.join(f.readlines())
data = re.findall("(?<=\"export\"\n)([-.\d\se]*)",d)
coords = []
for l in data:
coords.append(getPoints(re.findall('([+-]?\d*\.\d+(?:e[+-]?\d+)?)',l),4))
print(coords)
for each in coords:
linePoints = list(zip(each[0],each[1]))
ax.plot(linePoints[0],linePoints[1],linePoints[2])
plt.show()
Axes3D.plot()
但它不会触发我的模型钩子,我认为它适用于以下原因:
1 - 我已经在这条路上 2 - queryParam未更改
如何强制模型重新加载?我在路线上读到了重装方法,但我在这一切中都迷失了。
谢谢。
答案 0 :(得分:0)
你看过Route#refresh方法了吗?我觉得这样的事情可能有用:
export default Ember.Route.extend({
actions: {
unloadConversation() {
// ...
this.refresh();
}
}
});