我試圖將屬性傳遞到未包含在我的EndpointsModel中的API調用。例如,假設我有以下型號:使用端點 - 原型數據存儲,如何將屬性傳遞給未包含在端點模型中的方法
class MyModel(EndpointsModel):
attr1 = ndb.StringProperty()
然後假設我想在attr2
以作爲參數傳遞,但我不想attr2
被用作過濾我也不希望它被保存在模型中。我只是想傳入一些字符串,在方法中檢索它並使用它來執行一些業務邏輯。
該文檔描述了用於指定要傳入方法的字段的query_fields
參數,但這些參數似乎與模型中包含的屬性耦合,因此您無法傳入未在模型中指定的屬性。
同樣,文檔指出,可以在屬性通過路徑變量傳遞:
@MyModel.method(request_fields=('id',),
path='mymodel/{id}', name='mymodel.get'
http_method='GET')
def MyModelGet(self, my_model):
# do something with id
但是這需要你改變URL,再加上這似乎有相同的約束作爲query_fields
(該屬性必須存在於模型中)。
這是什麼意思?也許你應該問一個新問題。 – bossylobster 2013-11-03 17:28:19
如果我希望我的財產是隻讀的,我可以忽略'setter'屬性嗎? – Bugs 2015-09-18 15:01:33
是的。您還可以控制哪些方法與之交互,但setter實際上是從請求中獲取值並將其從protorpc對象移動到ndb模型對象。 – bossylobster 2015-09-18 15:49:43