Discover tab won't load anymore

In improvement to @Rohit_Singh 's answer we don't need to add the dashboard mapping i was able to do the same with following approach:-
For each dashboard the general curl commands are of the format with dashboard json as of
`curl -XPUT 'localhost:9200/.kibana/dashboard/mydashboard?pretty' -d '
{
"title" : "",
"hits" : 0,
"description" : "",
"panelsJSON" : ,
"optionsJSON" : ,
"uiStateJSON" : ,
"version" : 1,
"timeRestore" : false,
"kibanaSavedObjectMeta" : {
"searchSourceJSON" : }"

}'`
which should be modified as
curl -XPUT 'localhost:9200/.kibana/dashboard/mydashboard?pretty' -d '
{
"title" : "",
"panelsJSON" : ,
"optionsJSON" : ,
"uiStateJSON" : ,
"timeRestore" : false,
"kibanaSavedObjectMeta" : {
"searchSourceJSON" : }"

}'
and same for visualizations -
curl -XPUT 'localhost:9200/.kibana/visualization/myvisualization?pretty' -d '
{
"title" : ,
"visState" : ,
"uiStateJSON" : ,
"description" : "",
"version" : 1,
"kibanaSavedObjectMeta" : {
"searchSourceJSON" :
}
}'
should be modified as
curl -XPUT 'localhost:9200/.kibana/visualization/myvisualization?pretty' -d '
{
"title" : ,
"visState" : ,
"uiStateJSON" : ,
"kibanaSavedObjectMeta" : {
"searchSourceJSON" :
}
}'
I have tested this modification on my elk installation and it works fine without adding any mapping in the kibana index