<p>创建该Contract的组织名称: <%= contract.contract_creator.try(:name) %></p>

使用.try 方法,进行数据不存在的挽救,不然在一个新的环境运行,可能会出现大量的报错。

def index
-    @contract = Contract
+    @contract = Contract.all
   end

首先,@contract不能直接等于model,起码要加上.all

 def my_collections
-    @account = Account.where('address = ?', params[:address])
-    Rails.logger.info @account.inspect
-    @nfts = Nft.where('account_id = ?', @account.ids)
-    Rails.logger.info @nfts.inspect
+    @account = Account.where('address = ?', params[:address]).first
+    @nfts = Nft.where('account_id = ?', @account.id)
   end

然后明确,@account是做什么的 ,是一个数组还是元素,那么进行取用,获取一个元素的话,就是用first,同时需要注意是需要一个id还是全部的id