मैं उपयोगकर्ताओं को माइग्रेट कर रहा हूं और मैं $ उपयोगकर्ता ऑब्जेक्ट पर आया हूं ।
लॉगिन और एक्सेस फ़ील्ड के बीच अंतर क्या है? क्या हर पेज अनुरोध के साथ एक्सेस अपडेट हो जाता है?
मैं उपयोगकर्ताओं को माइग्रेट कर रहा हूं और मैं $ उपयोगकर्ता ऑब्जेक्ट पर आया हूं ।
लॉगिन और एक्सेस फ़ील्ड के बीच अंतर क्या है? क्या हर पेज अनुरोध के साथ एक्सेस अपडेट हो जाता है?
जवाबों:
पहुँच क्षेत्र Drupal के सत्र लिखने हैंडलर में अद्यतन किया जाता है _drupal_session_write । इसका अर्थ यह है कि यह संभावित रूप से हर पृष्ठ अनुरोध पर अपडेट किया गया है। यदि आप स्रोत कोड को देखते हैं, तो आप देखेंगे कि एक्सेस फ़ील्ड डिफ़ॉल्ट रूप से है, केवल हर 180 सेकंड में अपडेट किया गया है। session_write_interval
Drupal वैरिएबल सेट करके इस अंतराल को बदला जा सकता है ।
// Likewise, do not update access time more than once per 180 seconds.
if ($user->uid && REQUEST_TIME - $user->access > variable_get('session_write_interval', 180)) {
db_update('users')
->fields(array(
'access' => REQUEST_TIME,
))
->condition('uid', $user->uid)
->execute();
}
फ़ील्ड के लिए टिप्पणियों के अनुसार user_schema()
:
access
: पिछली बार उपयोगकर्ता द्वारा साइट पर पहुंचने के लिए टाइमस्टैम्प।
login
: उपयोगकर्ता के अंतिम लॉगिन के लिए टाइमस्टैम्प।
इसलिए access
प्रत्येक पृष्ठ लोड के लिए अद्यतन किया जाएगा, login
केवल जब उपयोगकर्ता वास्तव में लॉग इन करता है।