Jump to content

Модул:families/templates

Аз Wiktionary

Ин модул дастрасиро ба Модул:families аз қолабҳо таъмин мекунад, то онҳо тавонанд маълумоти дар он ҷо ҳифзшударо истифода баранд.

Функсияҳои содиротӣ

[вироиш]

вуҷуд дорад

[вироиш]

{{#invoke:families/templates|exists|(family code)}}

Санҷед, ки оё рамзи оила вуҷуд дорад ва дуруст аст. Он "1" -ро бармегардонад, агар рамзи оила вуҷуд дошта бошад ва сатри холӣ "" дар сурати мавҷуд набудани он.

Ин хеле кам лозим аст, зеро вақте ки касе рамзи нодурустро истифода мебарад, хатогии скрипт ба вуҷуд меояд, бинобар ин ба шумо танҳо барои тафтиш кардани хатогиҳо лозим нест. Аммо, агар ба шумо лозим ояд, ки амалҳои гуногунро вобаста ба он, ки кадом параметр рамзи оила ё чизи дигар аст, қарор қабул кунед, ин функсия метавонад муфид бошад.

getByCode

[вироиш]

{{#invoke:families/templates|getByCode|(family code)|(item to look up)|(index)}}

Маълумот дар бораи рамзи оиларо пурсед.

  • Рамзи оила бояд яке аз рамзҳое бошад, ки дар маълумоти Модул:families муайян карда шудааст. Агар он мавҷуд набошад ё вуҷуд надошта бошад, натиҷа хатои скрипт хоҳад буд.
  • Элемент номи яке аз қисмҳои маълумотест, ки барои оила захира карда мешавад, ба монанди getCanonicalName ё getFamily. Агар ягон адад дода нашуда бошад, натиҷа хатои скрипт хоҳад буд. Аммо, агар номи ашёи мавҷуда дода нашавад, натиҷа сатри холӣ хоҳад буд. Ин ба шумо имкон медиҳад, ки мавҷудият ё набудани ашёро бидуни хатогиҳо тафтиш кунед.
  • Индекс ихтиёрӣ аст ва барои ҷузъҳои рӯйхат истифода мешавад, ба монанди getOtherNames. Он интихоб мекунад, ки кадом ҷузъро дар рӯйхат баргардонад. Дар ҷузъҳое, ки сатрҳои ягона мебошанд, ба монанди getFamily, он таъсир надорад. Агар индекс дода нашавад, пешфарз 1 хоҳад буд (зербанди аввал). Агар индекс дода шавад, ки аз шумораи ҷузъҳои рӯйхат зиёдтар бошад, натиҷа сатри холӣ мешавад.

Масалан, дархост кардани номи пешфарз (каноникии) оилае, ки рамзи он аст sla:

{{#invoke:families/templates|getByCode|sla|getCanonicalName}}
  • Натиҷа: Slavic

Барои дархост кардани номи дуюми он, агар мавҷуд бошад:

{{#invoke:families/templates|getByCode|sla|getOtherNames|1}}
  • Натиҷа: Slavonic

Барои талаб кардани оилааш:

{{#invoke:families/templates|getByCode|sla|getFamily}}
  • Натиҷа: ine-bsl

Ҳамчунин нигаред

[вироиш]
  • Module:JSON data — барои содироти ҳама маълумот якбора

local export = {}

function export.exists(frame)
	return require("Module:families").getByCode(
		require("Module:parameters").process(frame.args, {
			[1] = {required = true}
		})[1]
	) and "1" or ""
end

function export.getByCode(frame)
	return require("Module:language-like").templateGetByCode(
		require("Module:parameters").process(frame.args, {
			[1] = {required = true, type = "family"},
			[2] = {required = true},
			[3] = {}
		})
	)
end

function export.getByCanonicalName(frame)
	local fam = require("Module:families").getByCanonicalName(
		require("Module:parameters").process(frame.args, {
			[1] = {required = true}
		})[1]
	)
	return fam and fam:getCode() or ""
end

return export