Rumah  >  Soal Jawab  >  teks badan

ruby - 在ror中正确的将变量传到view的做法是怎么的?

初学ruby,ror中生成了一个controller和view,代码如下:

class MyController < ApplicationController
  def index
    @output="123"
  end
end

我的问题是,为什么变量必须加上AT才能传入view?如果去掉AT,就会报错,AT是什么关键字还是框架约定?什么原理?如果可以请告诉我通识的写法,谢谢

也许这个问题太无聊,但我不太清楚该如何描述,所以也没有搜索到相关信息。

黄舟黄舟2713 hari yang lalu694

membalas semua(4)saya akan balas

  • 巴扎黑

    巴扎黑2017-04-21 11:19:50

    @var dalam Ruby ialah pembolehubah contoh, yang boleh diakses dalam semua kaedah kelas untuk pembolehubah yang tidak mengandungi @, skopnya adalah dalam kaedah semasa.

    ROR ialah untuk memaparkan templat dengan memanggil kaedah lain selepas kaedah semasa dilaksanakan. Dengan cara ini, cara paling mudah untuk menghantar pembolehubah antara dua kaedah ialah menggunakan pembolehubah contoh. Jika anda menggunakan pembolehubah biasa dan melebihi skop, ralat secara semula jadi akan dilaporkan.

    balas
    0
  • PHP中文网

    PHP中文网2017-04-21 11:19:50

    Pembolehubah yang bermula dengan @ ialah pembolehubah contoh dalam Ruby Sebaliknya, pembolehubah yang bermula dengan @@ ialah pembolehubah kelas.
    Dalam Rails, data dihantar antara pengawal dan pandangan melalui pembolehubah contoh. Proses ini adalah lalai dan tidak perlu dilalui secara eksplisit.

    Hanya ingat peraturan ini.

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-21 11:19:50

    @ dalam Ruby adalah bersamaan dengan diri dalam Python

    balas
    0
  • 黄舟

    黄舟2017-04-21 11:19:50

    Gunakan pembolehubah bermula dengan @ sebagai pembolehubah contoh.
    Dalam senario anda, apabila anda memulakan permintaan http, mekanisme penghalaan rel sepadan dengan kaedah indeks MyController untuk respons Jadi perkara berikut akan berlaku:
    1. Mulakan contoh MyController dan laksanakan kaedah indeks.
    2. Tetapkan pembolehubah contoh @output pengawal kepada '123'.
    3. Memandangkan anda tidak menyatakan sebarang pemaparan secara khusus, index.html.erb akan dipaparkan secara lalai
    4. Salin semua pembolehubah contoh pengawal (alih keluar beberapa yang tidak sepatutnya disalin)
    5. Segerakkan pandangan dan tetapkan pembolehubah tika yang baru disalin daripada pengawal kepada paparan.
    6. Dengan cara ini, anda boleh mendapatkan pembolehubah contoh ini dalam paparan.

    balas
    0
  • Batalbalas