2016-07-14 9 views
-1

Ich habe ein Problem mit der DT :: renderDatatable-Funktion, vielleicht kann jemand helfen. Ich versuche, eine data.table in einer glänzenden App anzuzeigen, und es zeigt nur die ersten 9 von 14 Spalten an. Wenn ich das DT auf die Konsole drucke, funktioniert es gut.Spalten von Datatable verschwinden in glänzenden Anwendung

# load and render 
    observeEvent(input$btLoadUserRules, { 
    # get data.frame with user rules 
    df.temp1 <- oFormUserRules$getAllUserRules() 
    # convert to data.table 
    dt.temp2 <- data.table(df.temp1) 


    output$tbl_tab2_1 <- DT::renderDataTable(dt.temp2, 
              options = list(paging = FALSE, searching = FALSE)) 

Vielen Dank!

Marie

+0

Was passiert, wenn Sie "Print (ncol (dt.temp2))" im 'observeEvent' hinzufügen? Hast du 9 oder 14 in der Konsole? – Carl

+0

Problem ist gelöst. Es wurde nicht angezeigt, dass nicht alle Spalten angezeigt werden, aber es wurde vergrößert, sodass einige Spalten nicht mehr sichtbar waren. Ich habe das nicht bemerkt, weil es nicht möglich ist, zu scrollen, also war die einzige Möglichkeit, es korrekt zu betrachten, das Herauszoomen. Danke allen! – mariego

+0

Wo ist das Beispiel? – jangorecki

Antwort

1

Persönlich mag ich nicht, was Sie in observeEvent tun, wie Sie jemals in observe Anweisung kleine Dinge tun sollen. Vielleicht wird diese Alternative funktionieren?

dt.temp2 <- eventReactive(input$btLoadUserRules, { 
     # get data.frame with user rules 
     return(as.data.table(oFormUserRules$getAllUserRules()))) 
output$tbl_tab2_1 <- DT::renderDataTable(dt.temp2(),options = list(paging = FALSE, searching = FALSE))) 
+0

danke, es funktioniert jetzt schon, wie ich gerade oben kommentiert habe. Trotzdem werde ich deinen Code berücksichtigen, um meinen besser zu machen. – mariego

+0

Sie könnten Probleme auftreten, wenn Sie 'beobachten' so verwenden, also besser,' reaktive' Ausdrücke zu verwenden :) Happy Coding –

Verwandte Themen