鍍金池/ 問答/ Ruby問答
囍槑 回答

發(fā)現(xiàn)是我自己之前裝的webpack4.x 好像不兼容,我卸載了webpack重新下載vue-cli就可以啦。。

安淺陌 回答

執(zhí)行這個(gè)解決sudo apt-get install ruby-dev

尤禮 回答

第一個(gè)問題:是的
第二個(gè)問題:官網(wǎng)上有提示。
第三個(gè)問題:比如裝java。官網(wǎng)下要配環(huán)境。brew不用

奧特蛋 回答
  • before_save { self.email = email.downcase }

這里面的 self.email 表示 當(dāng)前對象 的 email屬性;email.downcaseemail 表示調(diào)用一個(gè) email 方法(ActiveRecord 自動(dòng)為你生成的);
這行代碼的意思表示:一個(gè) User 實(shí)例對象在保存之前(before_save),email 轉(zhuǎn)換成小寫;
你的疑問可能是:什么時(shí)候用 self ,什么時(shí)候不用?
答案:絕大多數(shù)情況下都不用 self ,你遇到的這種情況是唯一一種需要顯示使用 self 的情況。

  • validates :email, ... 改為 validates self.email, ...

validates 是一個(gè) 類宏(class macro),類宏中的 self 表示當(dāng)前類對象本身(User),當(dāng)前類 User 對象(類對象本身)并沒有 email 方法(當(dāng)前類 User 有一個(gè)實(shí)例方法 email,是 ActiveRecord 為你生成的,上面解釋過了),所以報(bào)錯(cuò);
這行代碼的意思是:一個(gè) User 實(shí)例對象 save 或者 update 之前,需要驗(yàn)證 email 屬性;如果改成了 validates self.email, ... ,就代表驗(yàn)證 User 類對象本身的 email 方法,由于 User 類對象本身并沒有 email 方法,所以 NoMethodError。

PS:建議研讀下 《Ruby 元編程》(中文版第二版早已經(jīng)出版了),就會(huì)對 ruby 這些本質(zhì)的東西有一個(gè)更透徹的理解;如果覺得 Ruby 中好多的方法都不知道怎么用,DHH 推薦的 《The Ruby Way: Solutions and Techniques in Ruby Programming》也是一本高大全的書;鎬頭書《Programming Ruby》和 David Flanagan 的《The Ruby Programming Language》也是兩本非常好的 ruby 全解(盡管這兩本已經(jīng)有些過時(shí),但對你沒影響);

命于你 回答

String#scan

2.5.1 :017 > '16DC203B5R'.scan(/(\d+)*([a-zA-Z]+)*/)
 => [["16", "DC"], ["203", "B"], ["5", "R"], [nil, nil]]
2.5.1 :010 > '01AB03F4F'.scan(/(\d+)*([a-zA-Z]+)*/)
 => [["01", "AB"], ["03", "F"], ["4", "F"], [nil, nil]]
莓森 回答

記得左側(cè)會(huì)有文件管理項(xiàng)目結(jié)構(gòu),在view視圖中可以打開 可以更清晰的看到文件名,而不必依賴title上的文件名

下墜 回答

應(yīng)該要先建立一個(gè)模型數(shù)據(jù)庫,然后根據(jù)款式來貼圖吧

苦妄 回答

ps -T -l <進(jìn)程號(hào)> 可以顯示進(jìn)程以及進(jìn)程下面的線程。

clipboard.png

F 進(jìn)程的標(biāo)志
S 狀態(tài):

    D 無法中斷的休眠狀態(tài)(通常 IO 的進(jìn)程);
    R 正在運(yùn)行可中在隊(duì)列中可過行的;
    S 處于休眠狀態(tài);
    T 停止或被追蹤;
    W 進(jìn)入內(nèi)存交換  (從內(nèi)核2.6開始無效);
    X 死掉的進(jìn)程   (基本很少見);
    Z 僵尸進(jìn)程;
    < 優(yōu)先級(jí)高的進(jìn)程
    N 優(yōu)先級(jí)較低的進(jìn)程
    L 有些頁被鎖進(jìn)內(nèi)存;
    s 進(jìn)程的領(lǐng)導(dǎo)者(在它之下有子進(jìn)程);
    l 多進(jìn)程的(使用 CLONE_THREAD, 類似 NPTL pthreads);
    + 位于后臺(tái)的進(jìn)程組;
    

然后你想看數(shù)量的話可以這樣 wc -l
ps -T -l 123123 |wc -l
不過這樣的結(jié)果需要減掉第一行。。。才能得到準(zhǔn)確進(jìn)程數(shù)

舊顏 回答

典型的 Ruby 項(xiàng)目根目錄下都會(huì)有 Gemfile 文件,這個(gè)項(xiàng)目沒有,另外檢查了下這個(gè)項(xiàng)目里的 ruby 文件,返現(xiàn)只有兩個(gè)腳本,從文件名猜測只是輔助性的腳本文件,并非重要文件,所以據(jù)此推斷這不是一個(gè)以 Ruby 為主的項(xiàng)目。

clipboard.png

巫婆 回答

自己解決一下,在找相關(guān)資料的時(shí)候看到的:
And finally if we deploy application with Capistrano we have to deploy it properly. We should put local_env.yml to the Capistrano shared folder on the server and change config/deploy.rb like this:

before 'deploy:assets:precompile', :symlink_config_files

desc "Link shared files"
task :symlink_config_files do
  symlinks = {
    "#{shared_path}/config/database.yml" => "#{release_path}/config/database.yml",
    "#{shared_path}/config/local_env.yml" => "#{release_path}/config/local_env.yml"
  }
  run symlinks.map{|from, to| "ln -nfs #{from} #{to}"}.join(" && ")
end

于是我在自己的rails application中找到config/deploy.rb,里面有一行是:

append :linked_files, "config/database.yml", "config/secrets.yml"

于是我試著把a(bǔ)pplication.yml加到后面去,再次嘗試部署成功。

哎呦喂 回答

@course.comments.sum{ |cc| cc.comment.length }

荒城 回答

Hello, this help me resolve the problem for me.

Open Terminal
Install Homebrew:?? ruby -e "$(curl -fsSL https://raw.githubusercontent...)"
Do not close Terminal, open Mac Appstore and check Update, install all XCode Command Line Tools updates OR in my case, XCode Command Line Tools started install automaticly throught Terminal right after step 2.
Back to Terminal
Install Ruby:? ?brew install rbenv ruby-build
Install SASS gem: ??sudo gem install -n /usr/local/bin sass
After this steps, everything works fine and I can compilate again with Koala or in Dreamweaver.

我在github上找到解決辦法了

第一步:在命令中運(yùn)行ruby -e "$(curl -fsSL https://raw.githubusercontent...)"

第二步:打開你的xcode進(jìn)行更新

第三步:命令中運(yùn)行?brew install rbenv ruby-build

第四步:命令中運(yùn)行?sudo gem install -n /usr/local/bin sass

完成后koala就能正常編譯了

情皺 回答

可重入鎖不是這么用的,一般是在面向?qū)ο笾惺褂?,比?/p>

class A:
   def f1(self):
       mutex.acquire()
       try:
           #do something
       finally:
           mutex.release()
   def f2(self):
       mutex.acquire()
       try:
           #do something
       finally:
           mutex.release()

def run1(obj):
    obj.f1()
    obj.f2()
    
def run2(obj):
    obj.f2()
    obj.f1()

obj1 = A()
t1 = threading.Thread(target=run1, args=(obj1, ))
t2 = threading.Thread(target=run2, args=(obj1, ))
t1.start()
t2.start()

調(diào)用順序不同,而且都需要同步的時(shí)候,如果不用遞歸鎖,會(huì)死鎖。如果f1或f2不加鎖,數(shù)據(jù)不同步,報(bào)錯(cuò)

礙你眼 回答

if then end 這幾個(gè)都要有,只寫if是語法錯(cuò)誤

還吻 回答

原理就是:
vue中使用ref可以獲取到真實(shí)element,類似于原生的getElementById;而js中又可以通過element.click觸發(fā)元素的點(diǎn)擊事件(前提是這個(gè)元素是支持click事件的)。

參考:
ref獲取element
https://cn.vuejs.org/v2/api/#ref
element.click()
https://developer.mozilla.org...

短嘆 回答

\n,最初 gsub 函數(shù)錯(cuò)誤的使用的單引號(hào)所以得出了錯(cuò)誤的結(jié)論。

arr1_str = <<EOT.gsub('\n', '')
1,2
EOT

puts arr1_str.gsub("\n", '')
puts arr1_str.inspect

輸出

1,2
"1,2\n"
北城荒 回答

python官方庫中沒有,因?yàn)槟悴⒉荒苤纼?nèi)存地址處存儲(chǔ)的對象是什么類型的,對于一切都是用對象的python(底層c中的對象),僅根據(jù)一個(gè)內(nèi)存地址無法判斷底層c的類型

練命 回答

應(yīng)該是php重復(fù)jsonencode導(dǎo)致的

首頁 上一頁 1 2 3 下一頁 尾頁