persistence does not work when editing cell
まだ誰も着手していません。
評価
調査の方向性
Issue にリンクされている永続化のドキュメントから始め、persisted_props=['rowData'] を使って最初の編集可能なグリッドのサンプルを実行します。その動作を dcc.Store の回避策と比較し、その後コンポーネントの永続化処理を追跡します。関連する永続化の再読み込み後も、回避策を必要とせずに編集したセルの値が利用できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Based on the Docs:. We would like to make the data persist after editing the table. The persisted_props might be rowData. However, the persistence does not work as in the sample below:
"""
Accessing Row Data in an editable grid
"""
import dash
import dash_ag_grid as dag
from dash import Dash, html, dcc, Input, Output, State,ctx
import plotly.express as px
import pandas as pd
import json
app = Dash(__name__)
df = px.data.medals_wide()
app.layout = html.Div(
[
dcc.Markdown(id= 'dummy-input', children="Example of using `rowData` in a callback with an editable grid and added persistence to cell"),
dag.AgGrid(
id="editing-grid",
columnDefs=[{"field": i} for i in df.columns],
rowData=df.to_dict("records"),
columnSize="sizeToFit",
defaultColDef={"editable": True},
persistence=True,
persisted_props=['rowData'],
),
],
style={"margin": 20},
)
if __name__ == "__main__":
app.run_server(debug=True)
A workaround is to use dcc.Store() as below:
"""
Accessing Row Data in an editable grid
"""
import dash
import dash_ag_grid as dag
from dash import Dash, html, dcc, Input, Output, State,ctx
import plotly.express as px
import pandas as pd
import json
app = Dash(__name__)
df = px.data.medals_wide()
app.layout = html.Div(
[
dcc.Markdown(id= 'dummy-input', children="Example of using `rowData` in a callback with an editable grid and added persistence to cell"),
dag.AgGrid(
id="editing-grid",
columnDefs=[{"field": i} for i in df.columns],
rowData=df.to_dict("records"),
columnSize="sizeToFit",
defaultColDef={"editable": True},
),
dcc.Store(id='memory',storage_type = 'session'),
html.Div(id="editing-grid-output2"),
],
style={"margin": 20},
)
@app.callback(
Output("memory", "data"),
Output("editing-grid", "rowData"),
Input("editing-grid", "cellValueChanged"),
State("editing-grid", "rowData"),
State("memory", "data"),
)
def update(cell,rows,saved_rows):
if saved_rows is None:
saved_rows = df.to_dict("records")
if cell is None:
return saved_rows, saved_rows
else:
return rows,rows
if __name__ == "__main__":
app.run_server(debug=True)
- 主要言語
- Python
- スター
- 239
- フォーク
- 48
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
plotly/dash-ag-grid のほかの issue
-
Sparklines always use AG Charts Enterprise, so a Grid-only Enterprise license shows a watermarkオープン
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
plotly/dash-ag-grid#485 · コメント 1 件 ·
-
documentation
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
plotly/dash-ag-grid#484 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 42/100
plotly/dash-ag-grid#483 ·
-
Bump to v36対応中かも @BSd3v が 110 日前に担当しました。 オープン
plotly/dash-ag-grid#481 · リアクション 1 件 · 担当者 2 名 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
plotly/dash-ag-grid#474 · コメント 1 件 ·
plotly/dash-ag-grid の issue をすべて見る
似ている issue
-
bump patch
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
autowarefoundation/autoware_carla_scenario#1321 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1〜3時間 初心者へのやさしさ 78/100
QuantConnect/Documentation#2838 ·
メンテナーはふだん 1 日以内に返信
-
get_all_subclasses must deduplicate by class identity対応中かも @Gambit-Checkmate が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 15 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
awslabs/route53-dynamic-dns-with-lambda#67 · コメント 1 件 ·