Próbuję użyć „inteligentnego” wyszukiwania w bazie danych w błyszczącej aplikacji, aby wiele słów kluczowych mogło być przeszukiwanych wszędzie tam, gdzie pojawiają się w tabeli. Jest to domyślna funkcjonalność dla danych zgodnie z https://datatables.net/reference/option/search.smart i z pewnością działa, gdy uruchamiane są danew R poza błyszczącą aplikacją. Ale kiedy osadzam datatable w błyszczącej aplikacji, ta funkcjonalność nie działa. Czy istnieje opcja jej włączenia lub obejścia?
Moja tabela zawiera kolumnę z długim tekstem, w której użytkownik będzie szukał różnych (losowych) słów kluczowych.
Poniżej znajduje się kod, który można przetestować. Wyszukiwanie „Compact Honda” daje wiele wyników w tabeli R, ale żadna nie jest błyszcząca.
####### shiny basic script
library(ggplot2) #to load mpg dataset
library(shiny)
ui <- fluidPage(
fluidRow(
DT::dataTableOutput("table")
)
)
server <- function(input, output) {
output$table <- DT::renderDataTable(DT::datatable({
mpg
}))
}
shinyApp(ui = ui, server = server)
####### R basic script
library(ggplot2) #to load mpg dataset
DT::datatable(mpg)
Odpowiedzi:
0 dla odpowiedzi № 1Oto rozwiązanie dla Ciebie:
####### shiny basic script
library(ggplot2) #to load mpg dataset
library(shiny)
ui <- fluidPage(
fluidRow(
DT::dataTableOutput("table")
)
)
server <- function(input, output) {
output$table <- DT::renderDataTable(DT::datatable({
mpg, server = TRUE
}))
}
shinyApp(ui = ui, server = server)
Dodałem argument server = TRUE
do datatable()
, ważne jest, aby używać po stronie serwera DT
(przetwarzanie po stronie serwera), więc wszystkie funkcje działają dobrze.