Bagaimana cara menampilkan / mengedit nama mesin untuk Tampilan?

18

Bagaimana cara menampilkan / mengedit nama mesin untuk Tampilan?

Alasan untuk bertanya adalah bahwa saya mencoba mengkloning tampilan tetapi nama yang saya berikan ditolak karena sudah digunakan tetapi saya tidak bisa melihat di mana.

therobyouknow
sumber

Jawaban:

16

Anda dapat mengekspor tampilan, mengubah nilai, menghapus tampilan asli dan mengimpor kembali.

Ada opsi impor di halaman daftar tampilan. Cukup tempelkan url ini setelah url Anda saat ini dan Anda akan melihat halaman import view. Dengan melihat tag Anda, saya berasumsi Anda menggunakan Drupal 7, jadi url yang diberikan di bawah ini hanya akan berfungsi untuk Drupal 7.

Di bawah ini url yang akan ditambahkan:

#overlay=admin/structure/views/import

Untuk mengekspor tampilan:

  1. pergi ke / admin / struktur / tampilan

  2. di bawah kolom 'operasi' klik panah dan pilih 'ekspor'

  3. menyalin kode dan mengedit / mengubah editor eksternal

  4. buka / admin / struktur / tampilan / impor dan impor tampilan yang diubah Anda dapat terlebih dahulu menghapus tampilan yang ada atau pilih 'Ganti tampilan yang ada jika ada dengan nama yang sama' pada pengaturan impor

Zdenko Vujasinovic
sumber
Bisakah Anda jelaskan proses mengekspor tampilan?
niksmac
cara pintas dipotong
monymirza
/ admin / structure / views / import
Zdenko Vujasinovic
1
@ nikhil-m Untuk mengekspor tampilan: 1. buka / admin / structure / views 2. di bawah kolom 'operasi' klik panah dan pilih 'ekspor' 3. salin kode dan edit / ubah dalam editor eksternal 4. dapatkan / admin / struktur / tampilan / impor dan impor tampilan yang diubah Anda dapat terlebih dahulu menghapus tampilan yang ada atau pilih 'Ganti tampilan yang ada jika ada dengan nama yang sama' pada pengaturan impor
Zdenko Vujasinovic
+1 mengubah ini menjadi jawaban yang diterima karena sepenuhnya menjawab pertanyaan saya: 1. untuk melihat nama mesin dan 2. mengeditnya. Saya juga menyukai solusi ini karena memerlukan jumlah minimum kode dan pengaturan yang harus dilakukan (tidak ada kode yang harus ditulis dan tidak ada dependensi). Selain itu, diperlihatkan cara mengekspor tampilan itu sendiri - yang menurut saya akan sangat berguna untuk pembuatan otomatis situs Drupal (dengan drush, drush make), pengelolaan kode sumber, dan membuat tampilan serupa dari yang ada dengan cepat. Terima kasih!
therobyouknow
9

Saya tidak berpikir Anda dapat mengubah nama tampilan mesin, setidaknya tidak di UI. Anda dapat melihat nama mesin di URL jika mengarahkan mouse ke "tautan edit".

kamu
sumber
Saya akan memeriksanya.
therobyouknow
+1 & diterima @mototribu ini berfungsi. Sayang mereka tidak bisa menampilkannya secara permanen daripada harus melayang-layang.
therobyouknow
pembaruan: solusi parsial yang baik - terima kasih - Saya telah memindahkan flag yang diterima ke jawaban lain yang memberikan solusi untuk mengubah nama mesin.
therobyouknow
6

Anda dapat mengkloningnya dengan nama mesin baru.

Pembaruan: Cara menampilkan nama mesin untuk Tampilan.
Anda dapat melihat daftar semua tampilan di instalasi Drupal Anda menggunakan kode ini:

$views = views_get_all_views();
// Optional: views objects are big so unset large members
foreach ($views as $machine_name => $view) {
  unset($view->display, $view->localization_plugin);
  $views[$machine_name] = $view;
}
// Print array keyed by views machine name
dpm($views);

Anda dapat menjalankan kode ini di halaman devel/php(perlu modul Devel ).
Akan ada array tampilan yang diketik dengan nama mesin dan Anda akan dapat menemukan tampilan Anda yang hilang.

Pembaruan: Anda dapat mencari tampilan berdasarkan nama mesin di halaman daftar tampilan di Drupal 7. Untuk ini, Anda harus mengaktifkan tanda "Tampilkan filter pada daftar tampilan" di pengaturan Tampilan.

kalabro
sumber
1
Pertanyaannya adalah, "Bagaimana cara menampilkan / mengedit nama mesin untuk Tampilan?"
kiamlaluno
+1 @kiamlaluno. kalabro Saya terkejut bahwa dibutuhkan beberapa kode khusus untuk mencapai ini.
therobyouknow
Ini adalah kode debug satu kali, yang dapat Anda jalankan untuk melihat melalui tampilan Anda. Tidak ada kolom dengan nama mesin penayangan di daftar tampilan standar. Dan tidak ada tabel DB dengan semua tampilan, karena beberapa tampilan disimpan dalam kode.
kalabro
4

$page["#views_contextual_links_info"]["views_ui"]["view_name"] - Dengan menggunakan variabel ini Anda bisa mendapatkan nama mesin dari pandangan Anda.

mehar
sumber
0

Anda dapat mengubah nilai dari nama lapangan di views_view tabel dalam database. Tidak selalu ide yang terbaik, karena Anda dapat mengakhiri referensi ke blok / halaman di bagian situs, seperti di panel.

Mark Cameron
sumber
Saran yang mengerikan, ini akan merusak situs Anda.
Danny Englander
Tidak jika Anda pintar tentang hal itu dan ganti blok / panel / dll. Sama banyaknya pekerjaan dengan kloning
Mark Cameron
0

Saya tidak percaya Anda dapat mengubah nama mesin tampilan setelah Anda membuatnya dan menemukan nama mesin sama sekali tidak intuitif. Saya membayangkan ini mungkin karena satu-satunya orang yang akan membutuhkan nama mesin adalah pemrogram dan pengguna daya yang cukup maju yang dapat menangani beberapa kebingungan untuk membuat antarmuka lebih mudah dipahami untuk semua orang.

Untuk menemukan nama mesin dari tampilan, cukup buka daftar tampilan Anda dan tahan mouse Anda di bagian mana pun dari baris. Itu tidak harus menjadi tombol edit. Ini bukan JavaScript mouseover resmi sehingga peramban Anda dapat memilih untuk merendernya dengan cara yang berbeda dari yang saya lihat atau mungkin bahkan tidak merendernya sama sekali. Jika demikian, Anda dapat mengintip sumber HTML dan Anda akan melihat bahwa di tag baris tampilan yang Anda lihat, ada atribut judul yang akan dibaca.

Jika Anda ingin nama mesin tampilan di dalam tampilan, itu sedikit lebih mudah. Itu ada di blok Advanced dari antarmuka edit tampilan. Ada di sana di suatu tempat dan diberi label sebagai "nama mesin" sehingga tidak ada trik khusus untuk mengungkapnya. Tidak seperti nama mesin view, Anda dapat mengubah yang ini.

Jadi apa yang Anda lakukan jika Anda perlu mengubah nama tampilan mesin? Yah, Anda bisa menjadi renyah dengan database dan secara manual mengeditnya untuk memperbarui nama mesin di mana pun itu digunakan, tapi ini terlalu banyak masalah menurut saya. Ada cara yang jauh lebih mudah. Hanya mengkloning pandangan Anda dan berikan nama mesin yang Anda inginkan. Setelah dikloning, Anda dapat menghapus yang asli yang memiliki nama mesin yang salah.

Sheldon Chang
sumber